我看了其他答案,但看起来他们使用了2个不同的值.
代码:
user = ['X', 'Y', 'Z']
info = [['a','b','c',], ['d','e','f'], ['g','h','i']]
for u, g in user, range(len(user)):
print '|',u,'|',info[g][0],'|',info[g][1],'|',info[g][2],'| \n'
Run Code Online (Sandbox Code Playgroud)
基本上,它需要输出:
'| X | a | b | c |'
'| Y | d | e | f |'
'| z | g | h | i |'
Run Code Online (Sandbox Code Playgroud)
但相反,我得到这个错误:
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
for u, g in user, range(len(user)):
ValueError: too many values to unpack
Run Code Online (Sandbox Code Playgroud)
据我所知,用户和范围(len(用户))具有相同的价值.
Ash*_*ary 14
for u,g in user, range(len(user)):
Run Code Online (Sandbox Code Playgroud)
实际上相当于:
for u,g in (user, range(len(user))):
Run Code Online (Sandbox Code Playgroud)
即一个元组.它首先返回user列表然后range.作为项目的数量呈现user是3和LHS你刚刚两个可变(u,b),所以你会得到这个错误.
>>> u,g = user
Traceback (most recent call last):
File "<ipython-input-162-022ea4a14c62>", line 1, in <module>
u,g = user
ValueError: too many values to unpack
Run Code Online (Sandbox Code Playgroud)
你在zip这里寻找(并使用字符串格式而不是手动连接):
>>> user = ['X', 'Y', 'Z']
>>> info = [['a','b','c',], ['d','e','f'], ['g','h','i']]
for u, g in zip(user, info):
print "| {} | {} |".format(u," | ".join(g))
...
| X | a | b | c |
| Y | d | e | f |
| Z | g | h | i |
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1159 次 |
| 最近记录: |