gpt4 book ai didi

python - 是否可以使用一行命令将 [int, bool ,float] 转换为 ['int' , 'bool' ,'float' ] ?

转载 作者:太空狗 更新时间:2023-10-30 00:29:03 24 4
gpt4 key购买 nike

我使用多行命令将 [int, bool ,float] 转换为 ['int', 'bool','float']。

Numbers = [int, bool, float]
>>> [ i for i in Numbers]
[<class 'int'>, <class 'bool'>, <class 'float'>]
>>>foo = [ str(i) for i in Numbers]
>>>foo
["<class 'int'>", "<class 'bool'>", "<class 'float'>"]
>>> bar = [ i.replace('<class ','') for i in foo]
>>> bar
["'int'>", "'bool'>", "'float'>"]
>>> baz = [i.replace('>','') for i in bar]
>>> baz
["'int'", "'bool'", "'float'"]
>>> [ eval(i) for i in baz]
['int', 'bool', 'float']

如何优雅地完成这样的任务?

最佳答案

你想要 __name__属性。

[i.__name__ for i in Numbers]

顺便说一句,如果您有兴趣对 Python 数据结构进行内省(introspection),请使用 dir() .例如,dir(int) 将返回您可以在 int 类型上使用的所有属性和可调用方法的列表。

关于python - 是否可以使用一行命令将 [int, bool ,float] 转换为 ['int' , 'bool' ,'float' ] ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45618656/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com