python元组打包和解包过程详解


Posted in Python onAugust 02, 2021

1、在将多个以逗号分隔的值赋给一个变量时,多个值被打包成一个元组类型。当我们将一个元组赋给多个变量时,它将解包成多个值,然后分别将其赋给相应的变量。

# 打包
a = 1, 10, 100
print(type(a), a)    # <class 'tuple'> (1, 10, 100)
# 解包
i, j, k = a
print(i, j, k)       # 1 10 100

2、解包时,如果解包出来的元素数目与变量数目不匹配,就会引发ValueError异常。错误信息为:too many values to unpack(解包的值太多)或not enough values to unpack(解包的值不足)。

a = 1, 10, 100, 1000
# i, j, k = a             # ValueError: too many values to unpack (expected 3)
# i, j, k, l, m, n = a    # ValueError: not enough values to unpack (expected 6, got 4)

知识点扩充:

python之打包,解包

#coding:utf-8
#字符串,列表,元组打包与解包
aString = 'abc'
aList = [1, 2, 3]
aTuple = 'a', 'A', 1

print('Unpacking string......')
first, second, third = aString
print("string values:", first, second, third)

print('\nUnpacking list......')
first, second, third = aList
print("string values:", first, second, third)

print('\nUnpacking tuple......')
first, second, third = aTuple
print("string values:", first, second, third)

#swapping two values
x = 3
y = 4
print('\nBefore swapping: x = %d,y =%d' % (x, y))
#首先将右边的部分打包成一个元组,即(4,3),而后解包指派给变量x,y
x, y = y, x #swap Variables
print('After swapping: x = %d, y = %d' % (x, y))

到此这篇关于python元组打包和解包过程详解的文章就介绍到这了,更多相关python元组如何打包和解包内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用python写asp详细讲解
Dec 16 Python
python 采集中文乱码问题的完美解决方法
Sep 27 Python
python使用标准库根据进程名如何获取进程的pid详解
Oct 31 Python
浅谈Django自定义模板标签template_tags的用处
Dec 20 Python
[原创]Python入门教程5. 字典基本操作【定义、运算、常用函数】
Nov 01 Python
Python3 log10()函数简单用法
Feb 19 Python
使用python实现抓取腾讯视频所有电影的爬虫
Apr 15 Python
Python一行代码实现快速排序的方法
Apr 30 Python
python3.6使用tkinter实现弹跳小球游戏
May 09 Python
Python如何脚本过滤文件中的注释
May 27 Python
基于python计算滚动方差(标准差)talib和pd.rolling函数差异详解
Jun 08 Python
python 解决微分方程的操作(数值解法)
May 26 Python
python字典进行运算原理及实例分享
Aug 02 #Python
Python中可变和不可变对象的深入讲解
Python基础数据类型tuple元组的概念与用法
Aug 02 #Python
opencv用VS2013调试时用Image Watch插件查看图片
基于python定位棋子位置及识别棋子颜色
Python 处理表格进行成绩排序的操作代码
python识别围棋定位棋盘位置
You might like
php 定义404页面的实现代码
2012/11/19 PHP
PHP获取时间排除周六、周日的两个方法
2014/06/30 PHP
Linux系统下php获得系统分区信息的方法
2015/03/30 PHP
ubutu 16.04环境下,PHP与mysql数据库,网页登录验证实例讲解
2017/07/20 PHP
用JavaScript脚本实现Web页面信息交互
2006/12/21 Javascript
javascript动态添加表格数据行(ASP后台数据库保存例子)
2010/05/08 Javascript
javascript学习笔记(十一) 正则表达式介绍
2012/06/20 Javascript
javascript date格式化示例
2013/09/25 Javascript
JavaScript脚本库编写的方法
2015/12/09 Javascript
使用Node.js处理前端代码文件的编码问题
2016/02/16 Javascript
JS动态改变浏览器标题的方法
2016/04/06 Javascript
浅谈Node.js:理解stream
2016/12/08 Javascript
为vue-router懒加载时下载js的过程中添加loading提示避免无响应问题
2018/04/03 Javascript
vue-cli与webpack处理静态资源的方法及webpack打包的坑
2018/05/15 Javascript
详解vue-router 初始化时做了什么
2018/06/11 Javascript
node.js使用net模块创建服务器和客户端示例【基于TCP协议】
2020/02/14 Javascript
详解elementUI中input框无法输入的问题
2020/04/27 Javascript
JavaScript中的各种宽高属性的实现
2020/05/08 Javascript
OpenLayer学习之自定义测量控件
2020/09/28 Javascript
Python数据类型学习笔记
2016/01/13 Python
使用python爬虫获取黄金价格的核心代码
2018/06/13 Python
利用python开发app实战的方法
2019/07/09 Python
python处理自动化任务之同时批量修改word里面的内容的方法
2019/08/23 Python
超全Python图像处理讲解(多模块实现)
2020/04/13 Python
python下对hsv颜色空间进行量化操作
2020/06/04 Python
python缩进长度是否统一
2020/08/02 Python
scrapy-redis分布式爬虫的搭建过程(理论篇)
2020/09/29 Python
Python 串口通信的实现
2020/09/29 Python
美国时尚孕妇装品牌:A Pea in the Pod
2017/07/16 全球购物
法国亚马逊官方网站:Amazon.fr
2020/12/19 全球购物
华美博弈C/VC工程师笔试试题
2012/07/16 面试题
如何找出EMP表里面SALARY第N高的employee
2013/12/05 面试题
2014年污水处理厂工作总结
2014/12/19 职场文书
小学教师个人工作总结2015
2015/04/20 职场文书
公司回复函格式
2015/07/14 职场文书
班级管理经验交流材料
2015/11/02 职场文书