Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何检索namedtuple类(而不是实例)的字段?_Python 3.x_Collections_Namedtuple - Fatal编程技术网

Python 3.x 如何检索namedtuple类(而不是实例)的字段?

Python 3.x 如何检索namedtuple类(而不是实例)的字段?,python-3.x,collections,namedtuple,Python 3.x,Collections,Namedtuple,给定一个namedtuple: from collections import namedtuple MyNamedTuple = namedtuple('MyNamedTuple', ['foo','bar']) 我想在MyNamedTuple的字段上获得一个iterable。目前我有 [k for k in MyNamedTuple._fields] 但是它使用受保护/私有属性\u字段。有没有办法不用\u fields或protected/private属性/方法就能做到这一点?我想说

给定一个namedtuple:

from collections import namedtuple

MyNamedTuple = namedtuple('MyNamedTuple', ['foo','bar'])
我想在
MyNamedTuple
的字段上获得一个iterable。目前我有

[k for k in MyNamedTuple._fields]

但是它使用受保护/私有属性
\u字段
。有没有办法不用
\u fields
或protected/private属性/方法就能做到这一点?

我想说
\u fields
是正确的类属性,因为这是它的属性

但是,我不知道他们为什么选择在属性名称前面加下划线