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的web框架中配置app的教程
Apr 30 Python
详解Python的Django框架中inclusion_tag的使用
Jul 21 Python
探究python中open函数的使用
Mar 01 Python
Linux上安装Python的PIL和Pillow库处理图片的实例教程
Jun 23 Python
Python随机数random模块使用指南
Sep 09 Python
把pandas转换int型为str型的方法
Jan 29 Python
pandas计数 value_counts()的使用
Jun 24 Python
django项目登录中使用图片验证码的实现方法
Aug 15 Python
Windows 下python3.8环境安装教程图文详解
Mar 11 Python
Python实现CAN报文转换工具教程
May 05 Python
分布式全文检索引擎ElasticSearch原理及使用实例
Nov 14 Python
一篇文章带你了解Python和Java的正则表达式对比
Sep 15 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 header函数分析详解
2011/08/06 PHP
PHP中HTML标签过滤技巧
2014/01/07 PHP
yii2实现根据时间搜索的方法
2016/05/25 PHP
Sample script that deletes a SQL Server database
2007/06/16 Javascript
关于js中for in的缺陷浅析
2013/12/02 Javascript
jquery使用jxl插件导出excel示例
2014/04/14 Javascript
javascript数组去重方法终极总结
2014/06/05 Javascript
js检验密码强度(低中高)附图
2014/06/05 Javascript
jQuery对象初始化的传参方式
2015/02/26 Javascript
三个js循环的关键字示例(for与while)
2016/02/16 Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
2016/06/15 Javascript
jQuery中的AjaxSubmit使用讲解
2016/09/25 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
2016/12/22 Javascript
Bootstrap源码解读网格系统(3)
2016/12/22 Javascript
bootstrap下拉菜单使用方法解析
2017/01/13 Javascript
Vue开发中整合axios的文件整理
2017/04/29 Javascript
详解Angular4中路由Router类的跳转navigate
2017/06/09 Javascript
js中url对象化管理分析
2017/12/29 Javascript
AngularJs的UI组件ui-Bootstrap之Tooltip和Popover
2018/07/13 Javascript
解决angularjs中同步执行http请求的方法
2018/08/13 Javascript
移动端图片上传旋转、压缩问题的方法
2018/10/16 Javascript
jQuery实现动态添加和删除input框代码实例
2019/03/29 jQuery
Vue CL3 配置路径别名详解
2019/05/30 Javascript
layui 解决form表单点击无反应的问题
2019/10/25 Javascript
Node 模块原理与用法详解
2020/05/13 Javascript
[36:02]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第一局
2016/02/28 DOTA
零基础写python爬虫之urllib2中的两个重要概念:Openers和Handlers
2014/11/05 Python
爬虫代理的cookie如何生成运行
2020/09/22 Python
高级护理专业大学生求职信
2013/10/24 职场文书
文员的职业生涯规划发展方向
2014/02/08 职场文书
商务英语专业毕业生求职信
2014/07/06 职场文书
公务员培的训心得体会
2014/09/01 职场文书
精神病医院见习报告
2014/11/03 职场文书
2014年幼儿园后勤工作总结
2014/11/10 职场文书
opencv 分类白天与夜景视频的方法
2021/06/05 Python
Nginx缓存设置案例详解
2021/09/15 Servers