Python 在列表中打印相同的列表索引
我有一个清单,里面有清单Python 在列表中打印相同的列表索引,python,python-3.x,Python,Python 3.x,我有一个清单,里面有清单 [['H','J','K','L'],['Q','W','E','R'],['R','W','Q','T']] 我希望在一行内打印相同的索引,索引之间留有空格。因此输出为: H Q R J W W K E Q L R T 我尝试使用枚举和while循环进行for循环。似乎什么都不管用,我只是个初学者,所以我甚至不知道正确的方法。如果有人能帮我,我将非常感激 非常感谢!祝你今天愉快 您可以使用str.join和zip: s = [['H', 'J', 'K', '
[['H','J','K','L'],['Q','W','E','R'],['R','W','Q','T']]
我希望在一行内打印相同的索引,索引之间留有空格。因此输出为:
H Q R
J W W
K E Q
L R T
我尝试使用枚举和while循环进行for循环。似乎什么都不管用,我只是个初学者,所以我甚至不知道正确的方法。如果有人能帮我,我将非常感激
非常感谢!祝你今天愉快 您可以使用
str.join
和zip
:
s = [['H', 'J', 'K', 'L'], ['Q', 'W', 'E', 'R'], ['R', 'W', 'Q', 'T']]
new_s = '\n'.join(' '.join(i) for i in zip(*s))
输出:
H Q R
J W W
K E Q
L R T
以下是输出:
[['H' 'J' 'K']
['L' 'Q' 'W']
['E' 'R' 'R']
['W' 'Q' 'T']]
作为初学者,了解numpy可能会很有用。当您处理列表中的数据时,它简化了这样的任务。我在这里做的是从您显示的嵌套列表中创建一个numpy数组。numpy有一个名为的方法。重塑(),用于对齐数据所需的行数和列数。在您的示例中,您希望字母有4行3列,因此将4行3列传递给.reforme()函数将允许您获得数据的4行3列。作为初学者,Python中有一些库,如numpy,可以帮助您简化这样的任务。我希望这个答案能帮助你了解更多 对于您的具体情况,只需执行以下操作即可:
for i in range(len(list_a[0])):
print(" ".join([l[i] for l in list_a]))
for循环确保您按照所需的顺序获取元素,而列表理解只从指定索引处的子列表中获取元素并按顺序打印它们。如果您想将其升级,可以保存6个字符;)<代码>'\n'.join(map(''.join,zip(*x))@chrisz我想我知道你从哪里得到这个...)但是输出是错误的;)尝试使用sample_array.T代替。很好。只是注意到OP只是想要字母,没有引号,没有嵌套的列表括号
for i in range(len(list_a[0])):
print(" ".join([l[i] for l in list_a]))