为了账号安全,请及时绑定邮箱和手机立即绑定

这样写输出为啥是Lisa: 85 Lisa: 85 Lisa: 85

s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])
L=[]
for x in s:
    T=x
    L.append(T[0])
    L.append(T[1])
    print L[0],':',L[1]
   

正在回答

1 回答

因为输出的是L[0]和L[1],这两个元素在第一轮循环的时候就已经确定了,且由于set是无序的,因此一次循环遍历到的有可能是set中的任意一个元素。可进行如下修改:

s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])

L=[]

i=0

for x in s:

    T=x

    L.append(T[0])

    L.append(T[1])

    print(L[i],":",L[i+1])

    i=i+1

print(L)


0 回复 有任何疑惑可以回复我~
#1

weixin_慕妹0249392 提问者

明白了,多谢啊
2019-10-30 回复 有任何疑惑可以回复我~
#2

weixin_慕妹0249392 提问者

那里应该是i=i+2
2019-10-30 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758627    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

这样写输出为啥是Lisa: 85 Lisa: 85 Lisa: 85

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信