我有orderedDict
:
dict2.items():
[('A', <function __main__.percentile_50>),
('B', <function numpy.core.fromnumeric.sum>),
('C', <function numpy.core.fromnumeric.sum>),
('D', <function numpy.core.fromnumeric.mean>),
etc...
我想创建一个列,说明使用了什么描述(百分位数_50,总和,平均值等)我想找到最后一个.
,然后抓住它后面的字符,直到{ {1}}。所以我最终会得到>
。有什么建议吗?
答案 0 :(得分:2)
如果你的元组中有字符串,你可以在列表理解中使用split
:
>>> l=[('A', '<function __main__.percentile_50>'),
... ('B', '<function numpy.core.fromnumeric.sum>'),
... ('C', '<function numpy.core.fromnumeric.sum>'),
... ('D', '<function numpy.core.fromnumeric.mean>')]
>>>
>>> [(i,j.strip('>').split('.')[-1]) for i,j in l]
[('A', 'percentile_50'), ('B', 'sum'), ('C', 'sum'), ('D', 'mean')]
但是如果你有函数对象,你可以使用函数的__name__
属性来提取名称:
>>> [(i,j.__name__) for i,j in l]
[('A', 'percentile_50'), ('B', 'sum'), ('C', 'sum'), ('D', 'mean')]
答案 1 :(得分:0)