Python实用技巧之利用元组代替字典并为元组元素命名


Posted in Python onJuly 11, 2018

前言

本文主要给大家介绍了关于Python利用元组代替字典并为元组元素命名的相关内容,下面话不多说了,来一起看看详细的介绍吧

场景:

一般使用字典定义一个人的姓名,年龄,性别,邮箱等信息是非常方便的,比如:

student_one = {'name': 'Tom', 'age': 19, 'sex': 'male', 'email': 'tom123@hotmail.com'}

使用元组表示则为:

student_one = ('Tom', 19, 'male', 'tom123@hotmail.com')

使用元组替代字典表示信息的时候,一方面很难分别元素的含义,另一方面在取值的时候,需要通过索引(index)来获得,即:

student_one[0]
student_one[1]
student_one[2]
student_one[3]

当代码量很多的时候,很难分辨索引分别代表的值是什么,因此需要给每个索引命名,来解决难以分辨的问题:

第一种方案:给索引取”别名”

name = 0
age = 1
sex = 2
email = 3
# 这样即可通过索引的"别名"来取值

升级:

# 通过组包来完成
name, age, sex, email = range(4)

第二种方案:使用标准库中的collections.namedtuple来替代内置的tuple

from collections import namedtuple

student = namedtuple('student', ['name','age','sex','email'])

student_one = student("tom", 16, "male", "tom123@hotmail.com")

print(student_one)

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
关于你不想知道的所有Python3 unicode特性
Nov 28 Python
python算法表示概念扫盲教程
Apr 13 Python
python 计算数组中每个数字出现多少次--“Bucket”桶的思想
Dec 19 Python
Python语言描述连续子数组的最大和
Jan 04 Python
python实现log日志的示例代码
Apr 28 Python
python opencv 读取本地视频文件 修改ffmpeg的方法
Jan 26 Python
python3.6下Numpy库下载与安装图文教程
Apr 02 Python
Python操作SQLite/MySQL/LMDB数据库的方法
Nov 07 Python
详解在python操作数据库中游标的使用方法
Nov 12 Python
python 实现矩阵填充0的例子
Nov 29 Python
Python调用.net动态库实现过程解析
Jun 05 Python
Python ckeditor富文本编辑器代码实例解析
Jun 22 Python
Python实用技巧之列表、字典、集合中根据条件筛选数据详解
Jul 11 #Python
python 对txt中每行内容进行批量替换的方法
Jul 11 #Python
python遍历文件夹,指定遍历深度与忽略目录的方法
Jul 11 #Python
python 遍历目录(包括子目录)下所有文件的实例
Jul 11 #Python
Python批处理删除和重命名文件夹的实例
Jul 11 #Python
python顺序的读取文件夹下名称有序的文件方法
Jul 11 #Python
通过python顺序修改文件名字的方法
Jul 11 #Python
You might like
php上的memcache和memcached两个pecl库
2010/03/29 PHP
全面解读PHP的人气开发框架Laravel
2015/10/15 PHP
php实现session共享的实例方法
2019/09/19 PHP
JS location几个方法小姐
2008/07/09 Javascript
js创建子窗口并且回传值示例代码
2013/07/02 Javascript
jquery获取URL中参数解决中文乱码问题的两种方法
2013/12/18 Javascript
JS 日期比较大小的简单实例
2014/01/13 Javascript
js css3实现图片拖拽效果
2017/03/04 Javascript
Angular.JS中的指令引用template与指令当做属性详解
2017/03/30 Javascript
JS实现二叉查找树的建立以及一些遍历方法实现
2017/04/17 Javascript
Angular 4依赖注入学习教程之组件服务注入(二)
2017/06/04 Javascript
Nodejs中crypto模块的安全知识讲解
2018/01/03 NodeJs
图文介绍Vue父组件向子组件传值
2018/02/17 Javascript
如何获取vue单文件自身源码路径
2019/05/06 Javascript
[01:41]DOTA2超级联赛专访YYF 称一辈子难忘TI2
2013/05/28 DOTA
python发布模块的步骤分享
2014/02/21 Python
Python中用altzone()方法处理时区的教程
2015/05/22 Python
Python只用40行代码编写的计算器实例
2017/05/10 Python
urllib和BeautifulSoup爬取维基百科的词条简单实例
2018/01/17 Python
使用python绘制二维图形示例
2019/11/22 Python
使用python快速实现不同机器间文件夹共享方式
2019/12/22 Python
详解python破解zip文件密码的方法
2020/01/13 Python
Python Http请求json解析库用法解析
2020/11/28 Python
HTML5中外部浏览器唤起微信分享
2020/01/02 HTML / CSS
EMU Australia澳大利亚官网:澳大利亚本土雪地靴品牌
2019/07/24 全球购物
计算机软件专业求职信
2014/06/10 职场文书
声乐专业大学生职业生涯规划书:理想的未来需要自己去打造
2014/09/20 职场文书
2014年社区宣传工作总结
2014/12/02 职场文书
2015年财政局工作总结
2015/05/21 职场文书
婚礼上证婚人致辞
2015/07/28 职场文书
2016应届毕业生实习评语
2015/12/01 职场文书
2019最新版试用期劳动合同模板!
2019/07/04 职场文书
导游词之嵊泗列岛
2019/10/30 职场文书
python 实现mysql自动增删分区的方法
2021/04/01 Python
pytorch显存一直变大的解决方案
2021/04/08 Python
Nginx的基本概念和原理
2022/03/21 Servers