在 Python 中将元组拆分为多个变量

在 Python 中将元组拆分为多个变量

Split a tuple into multiple variables in 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')