[英]Replace list brackets in Python 3.x
我有多个列表对象
例子:
data = [['id', 'host'], [1, '123']]
print(data)
Output:
[['id', 'host'], [1, '123']]
什么时候:
print(*data)
Output:
['id', 'host'] [1, '123']
什么时候:
print(*data, sep='\n')
或者
print('\n'.join(map(str, data)))
Output:
['id', 'host']
[1, '123']
如何在没有括号和逗号的情况下制作这样的 output:
id host
1 123
一个直接的 for 循环给出了你想要的 output:
data = [['id', 'host'], [1, '123']]
for d in data:
print(*d)
如果这种方法有问题,那么在您的问题中并不明显。
如果您尝试生成str
结果,您可以使用一对join
调用将内部元素转换为str
然后用空格连接,然后用'\n'
连接这些行
data = [['id', 'host'], [1, '123']]
result = '\n'.join(' '.join(str(e) for e in d) for d in data)
您可以使用for 循环和str.join()
方法来执行此操作。
for sublist in data:
print(" ".join(sublist))
这仅在您专门使用字符串类型数据时才有效,但出于您的目的,请尝试以下操作:
for sublist in data:
print(" ".join([str(element) for element in sublist]))
你可以这样做:
print(*(f"{i:<4} {d}" for i,d in data),sep="\n")
id host
1 123
这个对我有用。 感谢瑞恩海宁。
print('\n'.join(', '.join(str(e) for e in d) for d in data))
我在加入之前添加了“,”,因为我需要将 output 记录为 csv 格式。 如果没有这个逗号,它将不会在 csv 表中格式化我的 output
如果您想在一行中完成所有操作,则可以将列表理解与以下内容一起使用:
print('\n'.join([' '.join((str(itr[0]), str(itr[1]))) for itr in data]))
另一个单行:
print(*[' '.join((str(itr[0]), str(itr[1]))) for itr in data], sep='\n')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.