Python 如何提高元组的可读性

yipeiwu_com6年前Python基础

这篇文章主要介绍了Python 如何提高元组的可读性,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

假设学生系统中数据为固定格式:(名字,年龄,性别,邮箱)

('jack','16','male','jack3001@gmail.com')
('eric','17','male','eric@qq.com')
('xander','16','female','lucy123@yahoo.com')

方案一:

from enum import IntEnum
NAME,AGE,SEX,EMAIL=range(4)
s=('jim','16','male','jim8721@gmail.com')
# print(NAME) # 0
class StudentEnum(IntEnum):
  NAME=0
  AGE=1
  SEX=2
  EMAIL=3

print(s[StudentEnum.NAME]) # jim
print(isinstance(StudentEnum.NAME,int)) # True

方案二:

from collections import namedtuple
Student=namedtuple('Student',['name','age','sex','email'])
s2=Student('jim','16','male','jim8721@gmail.com')
s3=Student('eric','16','male','eric3421@gmail.com')

print(s2) # Student(name='jim', age='16', sex='male', email='jim8721@gmail.com')
print(s3) # Student(name='eric', age='16', sex='male', email='eric3421@gmail.com')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Pytorch训练过程出现nan的解决方式

Pytorch训练过程出现nan的解决方式

今天使用shuffleNetV2+,使用自己的数据集,遇到了loss是nan的情况,而且top1精确率出现断崖式上升,这显示是不正常的。 在网上查了下解决方案。我的问题是出在学习率上了...

python学习之面向对象【入门初级篇】

python学习之面向对象【入门初级篇】

前言 最近在学习Python的面向对象编程,以前是没有接触过其它的面向对象编程的语言,因此学习这一部分是相当带劲的,这里也总结一下。 概述 python支持多种编程范式:面向过程、...

Python端口扫描简单程序

本文实例为大家分享了Python端口扫描的实现代码,供大家参考,具体内容如下 获取本机的IP和端口号: import socket def get_my_ip(): t...

浅谈python的dataframe与series的创建方法

如下所示: # -*- coding: utf-8 -*- import numpy as np import pandas as pd def main(): s = pd.S...

解决python中 f.write写入中文出错的问题

一个出错的例子 #coding:utf-8 s = u'中文' f = open("test.txt","w") f.write(s) f.close() 原因是编码方式错误,应该...