美文网首页
1-1可迭代对象对N个变量赋值

1-1可迭代对象对N个变量赋值

作者: 小龙虾0o0 | 来源:发表于2018-12-28 21:19 被阅读0次
解压赋值可以用在任何可迭代对象上面,而不仅仅是列表或者元组。 包括字符串,文件对象,迭代器和生成器。

代码如下:

a, b, c, d, e = [1, 2, 3, 4, 5]
>>> a 
>>> 1
>>> e
>>> 5
a, b, c = {1: 2, 3: 4, 5: 6}
>>> a
>>> 1
>>> b
>>> 3

要注意的是变量个数和可迭代对象的个数相等


如果个数不相等的情况下,但是想方便地赋值,可以采用增加变量数量的方式进行占位,到时再把这些变量丢弃(要注意变量名)

或者可以采用 * 的方式赋值
Python中,()会把接收到的参数形成一个元组,而(*)则会把接收到的参数存入一个字典

代码如下:

*a, b, c = [1, 2, 3, 4, 5]
print(*a,a)
>>> 1 2 3 [1, 2, 3]

a, *b, c = [1, 2, 3, 4, 5]
print(*b)
>>> 2 3 4

a, b, *c = [1, 2, 3, 4, 5]
print(*c)
>>> 3 4 5

[*a] = [1, 2, 3, 4, 5]
print(a)
>>> [1, 2, 3, 4, 5]

注意此时*a 为多个参数,而a为一个列表参数

相关文章

  • 1-1可迭代对象对N个变量赋值

    解压赋值可以用在任何可迭代对象上面,而不仅仅是列表或者元组。 包括字符串,文件对象,迭代器和生成器。 代码如下: ...

  • 【2017-08-30】数据结构与算法(一)

    解压序列赋值给多个变量及collections. deque使用 解压序列(或者可迭代对象)赋值给多个变量一般情况...

  • python cookbook第一章笔记

    1.1 解压序列赋值给多个变量 任何序列(或者是可迭代对象)可以通过一个简单的赋值语句解压并赋值给多个变量。唯一的...

  • Python之codebook笔记

    1. 解压序列赋值给多个变量 任何的序列(或者可迭代对象)可以通过一个简单的赋值语句解压并赋值给多个变量。唯一的前...

  • 变量的解构赋值

    理解: 从对象或数组中提取数据, 并赋值给变量(多个) 对象的解构赋值let {n, a} = {n:'tom',...

  • 小结-Python-可迭代、迭代器和生成器的区别

    可迭代对象 可迭代对象指的是定义了_ _ iter _ _ 方法的对象,调用该方法会返回一个迭代器对象。 可迭代对...

  • Python特别棒的特性

    1、*(星号表达式)解压可迭代对象赋值给多个变量 应用场景:解压接受可变长的变量,例如: 注意:星号表达式解压出来...

  • python的顺序程序设计

    赋值同步赋值:变量1,变量2,....变量n=表达式1,表达式2,.....表达式n同步赋值首先计算右边n个表达式...

  • 解构赋值

    解构赋值 解构赋值可分为数组解构赋值和对象解构赋值,数组解构赋值要求右侧必须可迭代(具有Iterator 接口),...

  • Ⅰ. Data structure and algorithm

    1.2 解压可迭代对象赋值给多个变量 扩展的解压迭代语法 *号可以表示同一类型的集合 假设你现在有一些用户的记录列...

网友评论

      本文标题:1-1可迭代对象对N个变量赋值

      本文链接:https://www.haomeiwen.com/subject/xbnelqtx.html