多选题) 在确定序列长度的情况下,可以用多变量赋值语句把元组、列表和字符串等序列解包,将元素分别赋值给多个独立变量,下面语句正确的有: A x, y = 5, 10 B x, y = (5, 10) C a, b, c = 'xyz' D x, y = [3, 6]
时间: 2024-03-23 16:43:05 浏览: 84
学学Python_18语句_赋值语句1(序列解包)
选项 A、B、C、D 都是正确的,因此正确答案是 AB、C、D。
在 Python 中,可以使用多变量赋值语句来解包序列,将序列中的元素分别赋值给多个变量。例如:
```python
# 解包元组
x, y = (5, 10)
print(x, y) # 输出 5 10
# 解包列表
x, y = [3, 6]
print(x, y) # 输出 3 6
# 解包字符串
a, b, c = 'xyz'
print(a, b, c) # 输出 x y z
```
需要注意的是,序列中的元素数量必须与变量数量相同,否则会抛出 `ValueError` 异常。另外,也可以使用一个变量名前面加上 `*` 来收集多余的元素,例如:
```python
# 解包元组
x, *rest = (1, 2, 3, 4, 5)
print(x) # 输出 1
print(rest) # 输出 [2, 3, 4, 5]
# 解包列表
x, *rest = [1, 2, 3, 4, 5]
print(x) # 输出 1
print(rest) # 输出 [2, 3, 4, 5]
```
这里的 `rest` 变量会收集多余的元素,可以是一个列表、元组或其他序列类型。
阅读全文