在python中解包元组和valueerror

kknvjkwl  于 2021-08-25  发布在  Java
关注(0)|答案(1)|浏览(359)

关闭。这个问题需要详细或明确。它目前不接受答案。
**想改进这个问题吗?**编辑这篇文章,添加细节并澄清问题。

13小时前关门。
改进这个问题
如果我有一个元组,如下所示:

t = ([1, 2, 3], 34, [3, 4, 5, 6], 5643)

当我使用 enumerate 要将其解包,我得到以下错误:

ValueError: not enough values to unpack (expected 4, got 3)

代码是:

for i, data in enumerate(t):
    a, b, c, d = data
5uzkadbs

5uzkadbs1#

打开元组而不使用 enumerate :

t = ([1, 2, 3], 34, [3, 4, 5, 6], 5643)
a, b, c, d  = t
print(a)
print(b)
print(c)
print(d)

输出:

[1, 2, 3]
34
[3, 4, 5, 6]
5643

请注意,由于 enumeratedata 对于不同的值,具有不同的长度 i ,如下所示(当您预期 data 要始终精确地包含4个元素,请执行以下操作:

for i, data in enumerate(t):
    print(f'{i}: {data}')

# 0: [1, 2, 3]

# 1: 34

# 2: [3, 4, 5, 6]

# 3: 5643

相关问题