在Python中打印不带方括号的元组列表

时间:2018-08-15 15:46:24

标签: python

我正在尝试打印出不带括号的元组列表,同时在元组周围保持括号。

例如,而不是输出(当前输出):

[('1', '3'), ('1', '4'), ('2', '3'), ('2', '4')]

输出应为:

(1, 3) (1, 4) (2, 3) (2, 4)

下面的当前源代码。

from itertools import product

if __name__ == '__main__':
    input_lists = []
    num_loops = int(input())
    i = 0

    while i < num_loops:
        add_to_list = input()
        input_lists.append(add_to_list.split(" "))
        i += 1

    result = ([i for i in product(*input_lists)])
    print(''.join(str(result)))

6 个答案:

答案 0 :(得分:3)

列表理解phpstr.format

str.join

答案 1 :(得分:2)

我建议进行int转换,然后解压:

>>> from __future__ import print_function  # for Python 2
>>> lst = [('1', '3'), ('1', '4'), ('2', '3'), ('2', '4')]
>>> print(*[tuple(map(int,t)) for t in lst])
(1, 3) (1, 4) (2, 3) (2, 4)

答案 2 :(得分:1)

print(' '.join([str(int(i for i in tup)
                for tup in list_of_tuples]))

在元组上调用str()确实会产生元组本身,因此我只对列表中的每个项目执行了此操作。我还需要将元组中的每个项目都设为一个整数,因此我还对每个元组中的每个项目执行了int()' '.join()方法将由单个空格传入的可迭代项中的所有项目分开。所以...我传入了一个列表解析,它对列表中的每个项目执行str()

答案 3 :(得分:0)

具有类似数组

 x = [('1', '3'), ('1', '4'), ('2', '3'), ('2', '4')]

您可以简单地做:

l = [(int(x),int(y)) for x,y in l]
print(*l)

其输出类似于

output//(1, 3) (1, 4) (2, 3) (2, 4)

答案 4 :(得分:0)

这是我的看法:

print(' '.join([str(tuple(map(int, i))) for i in L]))

几点:

  • 我们将tuplemap结合使用,将值从str转换为int
  • str.join是传递列表比生成器理解更有效的少数实例之一。

答案 5 :(得分:0)

您可以打开列表包装。

lst = [(1, 2), (3, 4)]
print(*lst)

输出:

(1, 2) (3, 4)
相关问题