N个数量的序列(可迭代对象),赋值给N个变量。

字符串:

 1 #!usr/bin/env python3
2 # -*- Coding=utf-8 -*-
3
4 '''
5 解压序列(或者任何可迭代对象)赋值给多个变量,唯一的前提就是,变量的数量必须跟序列元素的数量一样
6 '''
7
8 say = "hello" #定义字符串
9 a, b, c, d, e = say #按顺序赋值
10 print(a, b, c, d, e) #打印

元组:

1 #!usr/bin/env python3
2 # -*- Coding=utf-8 -*-
3
4 '''
5 解压序列(或者任何可迭代对象)赋值给多个变量,唯一的前提就是,变量的数量必须跟序列元素的数量一样
6 '''
7 p = (4,5) #定义元组p
8 x,y = p #将元组p中的值依次赋给x和y
9 print(x,y) #打印

列表:

 1 #!usr/bin/env python3
2 # -*- Coding=utf-8 -*-
3
4 '''
5 解压序列(或者任何可迭代对象)赋值给多个变量,唯一的前提就是,变量的数量必须跟序列元素的数量一样
6 '''
7 studentScore = ['Eric', 91, 92, 93, (2020, 6, 29)] #定义列表
8 name, chinese, math, english, date = studentScore #将列表中的各项值分别赋值给name,chinese,math,english,date
9 print(name, chinese, math, english, time) #打印各项值
10 print(type(time)) #打印date类型,tuple
11 #如果将列表中的元组的6换成06,会提示语法错误。
12 year, month, date = time #再次解压列表中的元组,分别赋值
13 print(year, month, date) #打印

元素个数与变量数量不符:

1 #!usr/bin/env python3
2 # -*- Coding=utf-8 -*-
3
4 '''
5 解压序列(或者任何可迭代对象)赋值给多个变量,唯一的前提就是,变量的数量必须跟序列元素的数量一样
6 '''
7 p = (4,5) #定义元组
8 x, y, z = p #赋值,会出现错误,因为变量个数和序列元素不匹配
9 #出现ValueError错误

解压一部分元素:

 1 #!usr/bin/env python3
2 # -*- Coding=utf-8 -*-
3
4 '''
5 解压序列(或者任何可迭代对象)赋值给多个变量,唯一的前提就是,变量的数量必须跟序列元素的数量一样
6 '''
7 #解压一部分,丢弃其他的值,启用占位符
8 studentScore = ['Eric', 91, 92, 93, (2020,6,29)]
9 _, chinese, math, english, _ = studentScore
10 print(chinese, math, english)

收工。

python之解压序列并赋值给变量的更多相关文章

  1. Python 解压序列、可迭代对象并赋值给多个变量

    Python数据结构和类型 1.1 解压序列赋值给多个变量 现在有一个包含N个元素的元组或者是序列,怎样将它里面的值解压后同时赋值给N个变量? 解决思路:先通过简单的解压赋值给多个变量,前提是变量的数 ...

  2. Python数据结构和类型--解压序列赋值多个变量

    Python数据结构和类型 1.1 解压序列赋值给多个变量 现在有一个包含N个元素的元组或者是序列,怎样将它里面的值解压后同时赋值给N个变量? 解决思路:先通过简单的解压赋值给多个变量,前提是变量的数 ...

  3. Chapter One:数据结构和算法-解压序列赋值给多个变量

    一.问题: 现在有一个包含 N 个元素的元组或者是序列,怎样将它里面的值解压后同时赋值给 N 个变量? 二.解决方案: 代码示例: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 ...

  4. Python基础(解压序列)

    解压序列: a,b=(1,2) # a,b=[1,2] print(a,b) #输出结果:1 2 #获取第一个值和最后一个值 a,*_,c=(1,2,3,4,5,6,7,8,9) print(a) p ...

  5. Python全栈day20(解压序列)

    补充:解压序列 需求一,不通过索引取一个列表的第一个元素和最后一个元素 需求二,交换两个变量的值 L=[1,2,3,4,5,6,7,8,9] #把列表第一个元素赋值给a,最后一个元素赋值给c #中间的 ...

  6. Python print命令/ 解压序列

    Python 命令参数  print 命令 : #默认的print是有个 空格,和换行的 # print(sep= ' ') # print(end = '/n') a = 'sunjinchao' ...

  7. 解密for循环工作机制之迭代器,以及生成器、三元表达式与列表解析、解压序列

    本节内容 1.迭代器协议与for循环 2.三元表达式 3.解压序列 4.列表解析 5.生成器 迭代器协议与for循环 1.迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中下一项, ...

  8. python循环解压rar文件

    python循环解压rar文件 C:. │ main.py │ ├─1_STL_算法简介 │ STL_算法简介.rar │ └─2_STL_算法_填充新值 STL_算法_填充新值.rar 事情是这样的 ...

  9. 【python】解压文件

    参考:http://essen.iteye.com/blog/1941489 tarfile模块 具体使用方法: https://docs.python.org/2/library/tarfile.h ...

随机推荐

  1. leetcode 33和 leetcode81

    //感想: 1.对于这两题,我真的是做到吐,这篇博客本来是昨晚准备写的,但是对于这个第二题,我真的做到头痛,实在是太尼玛的吐血了,主要是我也是头铁,非要找到那个分界点. 2.其实之前在牛客网上做过非常 ...

  2. recovery.sh

    #!/bin/bash source /etc/profile Time=`date +%F-%H-%M` Dir=/data/any.service.recovery if [ ! -d $Dir ...

  3. Codeforces Round #672 (Div. 2) B. Rock and Lever题解(思维+位运算)

    题目链接 题目大意 给你一个长为n(n<=1e5)的数组,让你求有多少对a[i]和a[j] (i!=j)满足a[i]&a[j]>a[i]^a[j] 题目思路 这些有关位运算的题目肯 ...

  4. CARDS主题 & 导航栏样式修改

    每个人对于主题样式的感觉是不一样的,譬如字体大小,间距,高宽,距离,颜色等,我们可以一定程度内很直观地去修改主题的某些样式. 首先,在浏览器中利用开发者工具进行调试,找到我们所要改动的那部分结构,写入 ...

  5. netty&websocket

    1.先判断是不是http 消息,不是返回400,是则remove之前添加的http组件,动态添加websocket组件 添加WebSocket Encoder和WebSocket Decoder之后, ...

  6. C++调用C接口

    目录 C++调用C代码 解决调用失败问题 思考:那C代码能够被C程序调用吗 C代码既能被C++调用又能被C调用 C++调用C代码 一个C语言文件p.c #include <stdio.h> ...

  7. BootstrapBlazor 组件库介绍

    项目介绍 演示系统地址:https://www.blazor.zone Blazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架: 使用 C# 代替 JavaScript 来创建丰富 ...

  8. Django----短信验证接口

    1.注册荣联云账号 1.1注册账号 1.2 登录即可看到开发者账号信息 1.3 添加测试账号 2.使用容联云发送代码测试 '''1. 安装容联云sdk''' pip install ronglian_ ...

  9. CoProcessFunction实战三部曲之二:状态处理

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  10. MySQL重做日志(redo log)

    前面介绍了三种日志:error log.slow log.binlog,这三种都是 Server 层的.今天的 redo log 是 InnoDB引擎专有的日志文件. 为什么要有 redo log 用 ...