未加星标

Python的namedtuple命名元组

字体大小 | |
[开发(python) 所属分类 开发(python) | 发布者 店小二05 | 时间 2016 | 作者 红领巾 ] 0人收藏点击收藏

python有一个类似tuple的容器namedtuples(命名元组),位于collection模块中。namedtuple是继承自tuple的子类,可创建一个和tuple类似的对象,而且对象拥有可访问的属性。

示例1:

import collections # 创建namedtuple Student = collections.namedtuple('Student',['name','age','id']) # 初始化 S = Student('snail','23','14335') # 使用下标访问 print(S[1])# 23 # 使用名字访问 print(S.name)# snail # 使用getattr()访问 print(getattr(S,'id'))# 14335

示例2:

import collections # 创建namedtuple Student = collections.namedtuple('Student',['name','age','id']) # 初始化 S = Student('snail','23','14335') # 获得字段名 print(S._fields)# ('name', 'age', 'id') # 更改值 print(S._replace(name = 'test'))# Student(name='test', age='23', id='14335') # namedtuple转为OrderedDict print(S._asdict())# OrderedDict([('name', 'snail'), ('age', '23'), ('id', '14335')]) # 使用list构造namedtuple li = ['panda', '12', '32343' ] print(Student._make(li))# Student(name='panda', age='12', id='32343') # 使用dict构造namedtuple di = { 'name' : "sucker", 'age' : 34 , 'id' : '544554' } print(Student(**di))# Student(name='sucker', age=34, id='544554') namedtuple文档: https://docs.python.org/3/library/collections.html#collections.namedtuple

本文开发(python)相关术语:python基础教程 python多线程 web开发工程师 软件开发工程师 软件开发流程

主题: Python
分页:12
转载请注明
本文标题:Python的namedtuple命名元组
本站链接:http://www.codesec.net/view/481576.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 开发(python) | 评论(0) | 阅读(41)