类实现:

class User:
def __init__(self, name, age, height):
self.name = name
self.age = age
self.height = height user = User(name="baoshan", age=31, height=170)
print(user.name, user.age, user.height)

namedtuple实现

方式1:

from collections import namedtuple

User = namedtuple("User", ["name", "age", "height"])
user = User(name="baoshan", age=31, height=170)
print(user.name, user.age, user.height)

方式2:

from collections import namedtuple

User = namedtuple("User", ["name", "age", "height"])
user_tuple = ("baoshan", 31, 170)
user = User(*user_tuple)
print(user.name, user.age, user.height)

namedtuple的优势

# namedtuple直接可以创建一个类
# 优势1: 代码简洁
# 优势2: 内存小,效率高 数据处理方面很有优势
user_info_dict = user._asdict()
print(user_info_dict) # namedtuple可以转换为dict
name, age, *others = user
print(name, age, *others) # namedtuple可以拆包

最新文章

  1. 最好的.NET开源免费ZIP库DotNetZip(.NET组件介绍之三)
  2. 吸顶大法 -- UWP中的工具栏吸顶的实现方式之一
  3. js 小技巧
  4. 在WordPress后台菜单系统中添加Home链接
  5. hdu 1231
  6. LeetCode Flip Game II
  7. Jquery选择器 讲解
  8. 理解angularJS中作用域$scope
  9. IP、路由配置
  10. python 如何读取大文件
  11. 使用git提交到github,每次都要输入用户名和密码的解决方法
  12. 第十二节:WebApi自动生成在线Api文档的两种方式
  13. C#复习笔记(4)--C#3:革新写代码的方式(用智能的编译器来防错)
  14. Windows 下配置 Apache 支持 https
  15. C# Enum枚举类型操作扩展类
  16. WebMagic之爬虫监控
  17. allegro 封装 (引脚编号修改)
  18. easyUI的datebox添加清空按钮功能
  19. bartender学习
  20. JS+Canvas的棋盘游戏和Java的动态结合

热门文章

  1. Kotlin数据类深度解析与底层剖析
  2. Django之路——6 Django的模型层(二)
  3. 《发际线总是和我作对》第九次团队作业:【Beta】Scrum meeting1
  4. mysql wait_timeout interactive_timeout 详解
  5. Gvim打造python编辑器,附自己的配置文件
  6. LeetCode 311. Sparse Matrix Multiplication
  7. 四大网络之Alexnet
  8. dp--01背包,完全背包,多重背包
  9. redis堵死致数据清空
  10. 原创:Solr Wiki 中关于Suggester(搜索推荐)的简单解读