在我的程序中,我需要输出网格中的点列表(行和列的元组)。但是,有时需要交换行和列。目前,我是这样的:
if swapped:
for col, row in points:
print(row, col)
else:
for row, col in points:
print(row, col)
我可以通过一次调用print()
来做到这一点吗?
答案 0 :(得分:3)
你是说吗?
for col, row in points:
print(row + ' ' + col if swapped else col + ' ' + row)
仅使用一个print
就可以达到预期的输出。
答案 1 :(得分:3)
所以,交换它们:
for col, row in points:
if swapped:
col, row = row, col
print(col, row)
答案 2 :(得分:1)
在python中进行交换的最简单,最简单的方法如下:
s1, s2 = s2, s1
在您看来,代码看起来像这样
for col, row in points:
if swapped:
col, row = row, col
print(row, col)
答案 3 :(得分:0)
看看下面的解决方案,交换变量:
for col, row in points:
if swapped:
row, col = col, row
print(row, col)
答案 4 :(得分:0)
这应该也可以
points = [(1,2), (3,4)]
swapped = True
for col, row in points:
print((row, col) if swapped else (col, row))
#(2, 1)
#(4, 3)
另一个例子是
points = [(1,2.5), ('x',4)]
swapped = False
for col, row in points:
print((row, col) if swapped else (col, row))
#(1, 2.5)
#('x', 4)