我有元组-
Result = [('80407', 'about power supply of opertional amplifier', '11 hours ago'), ('80405', '5V Regulator Power Dissipation', '11 hours ago')]`
我想遍历元组,并用;
分隔元组中的项目。
输出应如下-
80407;about power supply of opertional amplifier;11 hours ago
我尝试了以下操作:
for item in zip(*Result):
print(*item[0], end=';')
哪个给了我结果-
8 0 4 0 7;a b o u t p o w e r s u p p l y o f o p e r t i o n a l a m p l i f i e r;1 1 h o u r s a g o;`
和
for item in Result:
print(*item[0], end=';')
哪个给了我-
8 0 4 0 7;8 0 4 0 5;
如何正确遍历元组?
答案 0 :(得分:5)
通过遍历元组中的每个项目,用;
连接元组中的项目,并用另一个分隔符(也许是换行符\n
s = '\n'.join(';'.join(item for item in lst) for lst in Result)
print(s)
输出将为
80407;about power supply of opertional amplifier;11 hours ago
80405;5V Regulator Power Dissipation;11 hours ago
答案 1 :(得分:4)
我将用分号将元组中的每个项目连接起来,然后使用换行符将元组连接起来:
print('\n'.join(';'.join(i) for i in Result))
答案 2 :(得分:3)
要完成此操作,不需要任何zip
调用。相反,您可以像这样:
for item in Result:
print(*item, sep=';')
您正在尝试使用end
而不是sep
。 end
只是在行尾添加分号,而不是换行符。 sep
指定在打印调用中分隔值的内容。默认情况下,这是一个空格(sep=' '
和(end='\n'
)
答案 3 :(得分:0)
use可以使用%s
和元组位置来实现它。
for i in Result:
print('%s;%s;%s'% (i[0],i[1],i[2]))
答案 4 :(得分:0)
使用单个 join
语句
result = [
('80407', 'about power supply of operational amplifier', '11 hours ago'),
('80405', '5V Regulator Power Dissipation', '11 hours ago')]
for item in result:
print(';'.join(item))
给予
80407;about power supply of operational amplifier;11 hours ago
80405;5V Regulator Power Dissipation;11 hours ago