繁体   English   中英

如何从元组打印项目?

[英]How can I print items from a tuple?

我得到了元组 -

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;

如何正确迭代元组?

加入元组中的项目; 迭代元组中的每个项目,并将外部列表中的结果字符串与另一个分隔符连接,也许是换行符\\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

我用分号加入元组中的每个项目,然后使用换行符加入元组:

print('\n'.join(';'.join(i) for i in Result))

要做到这一点,不需要zip调用。 相反,你可以看起来像这样:

for item in Result:
    print(*item, sep=';')

你试图使用end而不是sep end只是在行的末尾添加一个分号,而不是换行符。 sep指定在打印调用中分隔值的内容。 默认情况下,这是一个空格( sep=' ' )和( end='\\n'

use可以使用%s和tuple位置来实现它。


for i in Result:
    print('%s;%s;%s'% (i[0],i[1],i[2]))

使用单个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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM