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

yipeiwu_com6年前Python基础

前言

本文主要给大家介绍了关于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 numpy中矩阵的基本用法汇总

Python numpy中矩阵的基本用法汇总

Python矩阵的基本用法 mat()函数将目标数据的类型转化成矩阵(matrix) 1,mat()函数和array()函数的区别 Numpy函数库中存在两种不同的数据类型(矩阵ma...

python实现分析apache和nginx日志文件并输出访客ip列表的方法

本文实例讲述了python实现分析apache和nginx日志文件并输出访客ip列表的方法。分享给大家供大家参考。具体如下: 这里使用python分析apache和nginx日志文件输出...

浅谈Python用QQ邮箱发送邮件时授权码的问题

浅谈Python用QQ邮箱发送邮件时授权码的问题

QQ邮箱最新推出了一个授权码,需已验证的手机号向QQ邮箱服务器发送一条短信获得。该授权码用于第三方客户端登录,代替了第三方登录时使用的个人邮箱密码。 在测试过程中遇到两个问题: 1.提示...

python3 enum模块的应用实例详解

一、枚举与字典类型 字典类型的缺点: 1.值可变 2.没有防止相同标签的功能 枚举的特点: 1.枚举类的值不可以被外界更改 2.不能存在相同的标签,但允许不同标签存在相同的枚举值,...

Python 使用 Pillow 模块给图片添加文字水印的方法

Python 使用 Pillow 模块给图片添加文字水印的方法

像微博一类的平台上传图片时,平台都会添加一个水印,宣誓着对图片的所有权,我们自己的博客平台也可以给自己的图片添加上水印。 还是用 Pillow 模块来实现 先来看一个简单的例子 &g...