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中的reduce内建函数使用方法指南
Aug 31 Python
Python中的Matplotlib模块入门教程
Apr 15 Python
解决Python中由于logging模块误用导致的内存泄露
Apr 23 Python
Python实现把数字转换成中文
Jun 29 Python
django认证系统实现自定义权限管理的方法
Jul 16 Python
Python对切片命名的实现方法
Oct 16 Python
Python机器学习之scikit-learn库中KNN算法的封装与使用方法
Dec 14 Python
python 实现敏感词过滤的方法
Jan 21 Python
Python字符串大小写转换拼接删除空白
Sep 19 Python
Python 转移文件至云对象存储的方法
Feb 07 Python
Python中Cookies导出某站用户数据的方法
May 17 Python
Pandas搭配lambda组合使用详解
Jan 22 Python
python字典进行运算原理及实例分享
Aug 02 #Python
Python中可变和不可变对象的深入讲解
Python基础数据类型tuple元组的概念与用法
Aug 02 #Python
opencv用VS2013调试时用Image Watch插件查看图片
基于python定位棋子位置及识别棋子颜色
Python 处理表格进行成绩排序的操作代码
python识别围棋定位棋盘位置
You might like
PHP+APACHE实现用户论证的方法
2006/10/09 PHP
解析使用substr截取UTF-8中文字符串出现乱码的问题
2013/06/20 PHP
PHPCMS忘记后台密码的解决办法
2016/10/30 PHP
Laravel 自动转换长整型雪花 ID 为字符串的实现
2020/10/27 PHP
经典的带阴影的可拖动的浮动层
2006/06/26 Javascript
使用jQuery的ajax功能实现的RSS Reader 代码
2009/09/03 Javascript
jquery基础教程之deferred对象使用方法
2014/01/22 Javascript
如何使用HTML5地理位置定位功能
2015/04/27 Javascript
javascript日期验证之输入日期大于等于当前日期
2015/12/13 Javascript
实现JavaScript高性能的数据存储
2016/12/11 Javascript
Vue 过渡(动画)transition组件案例详解
2017/01/22 Javascript
jquery编写日期选择器
2017/03/16 Javascript
一个可复用的vue分页组件
2017/05/15 Javascript
jQuery 实现双击编辑表格功能
2017/06/19 jQuery
javascript 作用于作用域链的详解
2017/09/27 Javascript
微信小程序实现手指触摸画板
2018/07/09 Javascript
Vue加载组件、动态加载组件的几种方式
2018/08/31 Javascript
使用apifm-wxapi快速开发小程序过程详解
2019/08/05 Javascript
JS/CSS实现字符串单词首字母大写功能
2019/09/03 Javascript
javascript网页随机点名实现过程解析
2019/10/15 Javascript
JavaScript逻辑运算符相关总结
2020/09/04 Javascript
[00:35]可解锁地面特效
2018/12/20 DOTA
[51:27]LGD vs Liquid 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
Python openpyxl读取单元格字体颜色过程解析
2019/09/03 Python
基于Python实现大文件分割和命名脚本过程解析
2019/09/29 Python
基于python3抓取pinpoint应用信息入库
2020/01/08 Python
python中读入二维csv格式的表格方法详解(以元组/列表形式表示)
2020/04/24 Python
Python API 操作Hadoop hdfs详解
2020/06/06 Python
在pycharm中关掉ipython console/PyDev操作
2020/06/09 Python
cookies应对python反爬虫知识点详解
2020/11/25 Python
python 爬虫请求模块requests详解
2020/12/04 Python
HTML5重塑Web世界它将如何改变互联网
2012/12/17 HTML / CSS
HTML5 Canvas 绘图——使用 Canvas 绘制图形图文教程 使用html5 canvas 绘制精美的图
2015/08/31 HTML / CSS
党的群众路线教育实践活动个人对照检查材料(医生)
2014/11/05 职场文书
学生自我评语
2015/01/04 职场文书
长辈生日祝福语大全(72句)
2019/08/09 职场文书