在 Python 中将元组拆分为多个变量
解包值以将元组拆分为多个变量,例如 r, g, b = (‘red’, ‘green’, ‘blue’)。 解包时,确保声明的变量与可迭代对象中的项目一样多。
r, g, b = ('red', 'green', 'blue')
print(r) # ?️ 'red'
print(g) # ?️ 'green'
print(b) # ?️ 'blue'
从元组中解包时,每个变量声明都算作一个项目。
确保声明的变量与元组中的项目一样多。
r, g, b, y = ('red', 'green', 'blue', 'yellow')
print(r) # ?️ 'red'
print(g) # ?️ 'green'
print(b) # ?️ 'blue'
print(y) # ?️ 'yellow'
如果我们尝试解包的值多于或少于元组中的值,则会出现错误。
# ⛔️ ValueError: too many values to unpack (expected 2)
r, g = ('red', 'green', 'blue')
我们声明了 2 个变量,但元组包含 3 个项目。 元组中变量和项的数量不一致会导致 ValueError
。
如果不需要存储某个值,请使用下划线作为变量名称。
r, _, b = ('red', 'green', 'blue')
print(r) # ?️ 'red'
print(b) # ?️ 'blue'
当我们对变量名称使用下划线时,我们向其他开发人员表明该变量只是一个占位符。
解包值时,我们可以根据需要使用尽可能多的下划线。
r, _, _, y = ('red', 'green', 'blue', 'yellow')
print(r) # ?️ 'red'
print(y) # ?️ 'yellow'
这是必需的,因为一个逗号接一个逗号是无效的语法。
# ⛔️ SyntaxError: invalid syntax
r, , , y = ('red', 'green', 'blue', 'yellow')
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。