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之入门(五)缩进和选择
May 27 Python
Python使用logging结合decorator模式实现优化日志输出的方法
Apr 16 Python
Python之pandas读写文件乱码的解决方法
Apr 20 Python
Python采集代理ip并判断是否可用和定时更新的方法
May 07 Python
python高效过滤出文件夹下指定文件名结尾的文件实例
Oct 21 Python
Python lambda表达式用法实例分析
Dec 25 Python
django项目简单调取百度翻译接口的方法
Aug 06 Python
树莓派极简安装OpenCv的方法步骤
Oct 10 Python
关于Numpy数据类型对象(dtype)使用详解
Nov 27 Python
python 轮询执行某函数的2种方式
May 03 Python
python的reverse函数翻转结果为None的问题
May 11 Python
django-orm F对象的使用 按照两个字段的和,乘积排序实例
May 18 Python
python字典进行运算原理及实例分享
Aug 02 #Python
Python中可变和不可变对象的深入讲解
Python基础数据类型tuple元组的概念与用法
Aug 02 #Python
opencv用VS2013调试时用Image Watch插件查看图片
基于python定位棋子位置及识别棋子颜色
Python 处理表格进行成绩排序的操作代码
python识别围棋定位棋盘位置
You might like
用Zend Encode编写开发PHP程序
2010/02/21 PHP
详解PHP处理密码的几种方式
2016/11/30 PHP
特殊字符、常规符号及其代码对照表
2006/06/26 Javascript
JsEasy简介 JsEasy是什么?与下载
2007/03/07 Javascript
JavaScript中的集合及效率
2010/01/08 Javascript
javascript在myeclipse中报错的解决方法
2013/10/29 Javascript
jquery改变tr背景色的示例代码
2013/12/28 Javascript
使用GruntJS构建Web程序之Tasks(任务)篇
2014/06/06 Javascript
JS实现FLASH幻灯片图片切换效果的方法
2015/03/04 Javascript
实例讲解避免javascript冲突的方法
2016/01/03 Javascript
jquery中ajax处理跨域的三大方式
2016/01/05 Javascript
js+canvas绘制五角星的方法
2016/01/28 Javascript
jQuery插件HighCharts实现的2D面积图效果示例【附demo源码下载】
2017/03/15 Javascript
微信分享调用jssdk实例
2017/06/08 Javascript
javascript基础进阶_深入剖析执行环境及作用域链
2017/09/05 Javascript
nodejs创建简易web服务器与文件读写的实例
2017/09/07 NodeJs
JavaScript内存泄漏的处理方式
2017/11/20 Javascript
JavaScript+H5实现微信摇一摇功能
2018/05/23 Javascript
浅谈Vue.js中如何实现自定义下拉菜单指令
2019/01/06 Javascript
Quasar Input:type=&quot;number&quot; 去掉上下小箭头 实现加减按钮样式功能
2020/04/09 Javascript
微信小程序实现多张图片上传功能
2020/11/18 Javascript
[01:36:17]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第一场 1月31日
2021/03/11 DOTA
跟老齐学Python之编写类之三子类
2014/10/11 Python
python查找目录下指定扩展名的文件实例
2015/04/01 Python
python使用tcp实现局域网内文件传输
2020/03/20 Python
Mytheresa英国官网:拥有160多个奢侈品品牌
2016/10/09 全球购物
JustFab加拿大:女鞋、靴子、手袋和服装在线
2018/05/18 全球购物
Allen Edmonds官方网站:一家美国优质男士鞋类及配饰制造商
2019/03/12 全球购物
招标承诺书
2014/08/30 职场文书
八项规定个人对照检查材料思想汇报
2014/09/25 职场文书
销售督导岗位职责
2015/04/10 职场文书
2016见义勇为事迹材料汇总
2016/03/01 职场文书
《敬重卑微》读后感3篇
2019/11/26 职场文书
MySQL系列之四 SQL语法
2021/07/02 MySQL
Oracle安装TNS_ADMIN环境变量设置参考
2021/11/01 Oracle
实战 快速定位MySQL的慢SQL
2022/03/22 MySQL