如何解决使用“ for”循环和用星号运算符*解包在Python中打印元组
- 使用“ for”循环
- 在print()方法中使用星号运算符
在输出中,字符串“参考点”应该将两种方式的结果分开。
animals = {"dog","cat","pig"}
numbers = (1,2,3)
column = ['a','b','c']
result = zip(animals,column,numbers)
#first way of printing the items in the result tuple
for item in result:
print(item)
print('\nreference point\n')
#second way of printing the items in the result tuple
print(*result,sep="\n")
但是,代码仅输出第一个结果(“参考点”之前),而不管它是哪种方式(“ for”循环或star运算符),如下所示:
('dog','a',1)
('pig',2)
('cat','c',3)
reference point
有人知道为什么“结果”元组的项目仅打印一次,如何解决?我正在寻找类似以下的输出:
('dog',3)
reference point
('dog',3)
解决方法
由zip
构造的迭代器在第一次迭代时就用光了,您需要重新构建它或将其设为类似result = list(zip(animals,column,numbers))
的列表
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。