创建蟒蛇键控阵列

IM称他们为键控阵列,因为如果我知道他们叫什么我能找到自己的答案= - )

OK,例如:

parser = OptionParser(conflict_handler="resolve") parser.add_option("-x", dest="var_x", help="") parser.add_option("-y", dest="var_y", help="") (options, args) = parser.parse_args()

生成可以这样使用一个选项对象:

foobar = options.var_x

这些是什么打来电话,在那里我会找到关于如何创建和使用它们的一些文档?

--------------解决方案-------------

一个POSS是包装在一个对象字典参见下面的类定义:

class Struct:
def __init__(self, **entries):
self.__dict__.update(entries)

然后,只需用词典构造像这样:

adictionary = {'dest':'ination', 'bla':2}
options = Struct(**adictionary)
options.dest
options.bla

options.dest将返回萌发的“

options.bla将返回2

,做一些非常相似的一个类是namedtuple

In [1]: from collections import namedtuple

In [2]: Point = namedtuple('Point', ['x', 'y'])

In [4]: p = Point(1, 2)

In [5]: px
Out[5]: 1

In [6]: py
Out[6]: 2

如果你这样做help(options)在交互终端,你会看到这是一个optparse.Values ​​实例。 它不打算使自己的东西,真的。

对于键值对使用属性的访问通常是愚蠢的。 很多时候人们谁坚持它确实应该只是使用字典。

主要的内置方式沿着这些路线做一些事情是collections.namedtuple

分类:蟒蛇 时间:2015-03-15 人气:0
本文关键词: 蟒蛇
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.292 (s). 10 q(s)