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 相关文章推荐
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
Sep 19 Python
Python科学画图代码分享
Nov 29 Python
python opencv之分水岭算法示例
Feb 24 Python
Python实现微信自动好友验证,自动回复,发送群聊链接方法
Feb 21 Python
Python学习笔记之抓取某只基金历史净值数据实战案例
Jun 03 Python
Python3安装psycopy2以及遇到问题解决方法
Jul 03 Python
Django 反向生成url实例详解
Jul 30 Python
python 已知三条边求三角形的角度案例
Apr 12 Python
python 监控logcat关键字功能
Sep 04 Python
python中用Scrapy实现定时爬虫的实例讲解
Jan 18 Python
解决python 输出到csv 出现多空行的情况
Mar 24 Python
python数字类型和占位符详情
Mar 13 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抽象工厂模式(Elgg)
2010/03/21 PHP
php中cookie的使用方法
2014/03/29 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
PHP实现重载的常用方法实例详解
2017/10/18 PHP
浅谈PHP封装CURL
2019/03/06 PHP
javascript 一些用法小结
2009/09/11 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
2012/05/23 Javascript
基于jquery的时间段实现代码
2012/08/02 Javascript
Jquery插件写法笔记整理
2012/09/06 Javascript
js 有框架页面跳转(target)三种情况下的应用
2013/04/09 Javascript
jQuery中insertBefore()方法用法实例
2015/01/08 Javascript
如何使用AngularJs打造权限管理系统【简易型】
2016/05/09 Javascript
基于webpack-hot-middleware热加载相关错误的解决方法
2018/02/22 Javascript
Vue + better-scroll 实现移动端字母索引导航功能
2018/05/07 Javascript
详解vue中async-await的使用误区
2018/12/05 Javascript
详解Vue项目引入CreateJS的方法(亲测可用)
2019/05/30 Javascript
python局域网ip扫描示例分享
2014/04/03 Python
Python中的各种装饰器详解
2015/04/11 Python
python装饰器初探(推荐)
2016/07/21 Python
Python中一行和多行import模块问题
2018/04/01 Python
python执行CMD指令,并获取返回的方法
2018/12/19 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
Python 文件数据读写的具体实现
2020/01/24 Python
完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误
2020/04/01 Python
实现CSS3中的border-radius(边框圆角)示例代码
2013/07/19 HTML / CSS
节省高达65%的城市景点费用:Go City
2019/07/06 全球购物
Perfume’s Club中文官网:西班牙美妆在线零售品牌
2020/08/24 全球购物
监察建议书范文
2014/03/12 职场文书
小学生新年寄语
2014/04/03 职场文书
数控专业毕业生求职信
2014/06/12 职场文书
普通党员对照检查材料
2014/09/24 职场文书
学籍证明模板
2015/06/18 职场文书
宾馆客房管理制度
2015/08/06 职场文书
2016党员党课心得体会
2016/01/07 职场文书
CSS3实现模糊背景的三种效果示例
2021/03/30 HTML / CSS
Java字符缓冲流BufferedWriter
2022/04/09 Java/Android