python 小工具总结

总结一些python编程中可能会用到的一些小工具

namedtuple

给tuple 起个名字

def namedtuple(typename, field_names, verbose=False, rename=False):
  """Returns a new subclass of tuple with named fields.

    >>> Point = namedtuple('Point', ['x', 'y'])
    >>> Point.__doc__                   # docstring for the new class
    'Point(x, y)'
    >>> p = Point(11, y=22)             # instantiate with positional args or keywords
    >>> p[0] + p[1]                     # indexable like a plain tuple
    33
    >>> x, y = p                        # unpack like a regular tuple
    >>> x, y
    (11, 22)
    >>> p.x + p.y                       # fields also accessible by name
    33
    >>> d = p._asdict()                 # convert to a dictionary
    >>> d['x']
    11
    >>> Point(**d)                      # convert from a dictionary
    Point(x=11, y=22)
    >>> p._replace(x=100)               # _replace() is like str.replace() but targets named fields
    Point(x=100, y=22)

    """

from collections import namedtuple
NamedTuple = namedtuple("NamedTuple", ['output', 'stride']) # 返回一个类

tup1 = NamedTuple(output=54, stride=2) 
print(tup1[1], tup1)

OrderedDict

# 记录了插入元素顺序的 dict
from collections import OrderedDict

ordered_dict = OrderedDict()

ordered_dict['he'] = 'hello'
ordered_dict['be'] = 'bello'
print(ordered_dict)
# OrderedDict([('he', 'hello'), ('be', 'bello')])
# 遍历方法与 dict 一致

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏佳爷的后花媛

java基础知识

Vector、Stack、HashTable、ConcurrentHashMap、Properties

1395
来自专栏用户2442861的专栏

Java面试题全集(上)

http://blog.csdn.net/jackfrued/article/details/44921941

682
来自专栏java一日一条

Java 多线程同步的五种方法

因为当我们有多个线程要同时访问一个变量或对象时,如果这些线程中既有读又有写操作时,就会导致变量值或对象的状态出现混乱,从而导致程序异常。举个例子,如果一个银行账...

732
来自专栏高爽的专栏

Java序列化(一)

 Java序列化,一个日常开发中比较少用到的技术。正常情况下,JVM启动后,我们可以创建对象生存其内,JVM关闭后,我们创建过的对象都随之销毁,资源释...

1960
来自专栏小勇DW3

java设计模式之模板模式以及钩子方法使用

  模板方法模式是通过把不变行为搬到超类,去除子类里面的重复代码提现它的优势,它提供了一个很好的代码复用平台。当不可变和可变的方法在子类中混合在一起的时候,

1124
来自专栏你不就像风一样

抛弃配置后的Spring终极教程

对于Spring,核心就是IOC容器,这个容器说白了就是把你放在里面的对象(Bean)进行统一管理,你不用考虑对象如何创建如何销毁,从这方面来说,所谓的控制反转...

862
来自专栏恰同学骚年

C#委托与事件学习笔记

      今天跟随视频学习了一下C#中最重要的一些概念之委托与事件。老杨的视频讲的还是挺深入浅出,不过刚接触C#.NET的人还是朦朦胧胧,就像张子阳先生说的“...

773
来自专栏Jerry的SAP技术分享

Java动态代理之InvocationHandler最简单的入门教程

网上关于Java的动态代理,Proxy和InvocationHandler这些概念有讲解得非常高深的文章。其实这些概念没有那么复杂。现在咱们通过一个最简单的例子...

492
来自专栏noteless

java 标准输出与标准错误 out与 err 区别 用法 联系 java中的out与err区别 System.out和System.err的区别 System.out.println和Sy

java 标准输出与标准错误    out与 err 区别 用法 联系  java中的out与err区别  System.out和System.err的区别 S...

1073
来自专栏云霄雨霁

Java--运行期类型鉴定(RTTI)

1505

扫码关注云+社区