我有一个 python 列表如下:
['item1','item2','item3']
我正在尝试将列表中的项目重命名为
['person1','person2','person3']
谁能指导我。谢谢
原文由 scott martin 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有一个 python 列表如下:
['item1','item2','item3']
我正在尝试将列表中的项目重命名为
['person1','person2','person3']
谁能指导我。谢谢
原文由 scott martin 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果要用特定值替换特定元素,请执行以下操作:
In [521]: items = ['item1','item2','item3']
In [522]: dic = {'item1':'person1', 'item2':'human', 'item3':'person3'}
In [523]: [dic.get(n, n) for n in items]
Out[523]: ['person1', 'human', 'person3']
原文由 Mayank Porwal 发布,翻译遵循 CC BY-SA 4.0 许可协议
4 回答4.4k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
1 回答2.9k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
1 回答4.5k 阅读✓ 已解决
1 回答3.8k 阅读✓ 已解决
1 回答2.8k 阅读✓ 已解决
考虑到速度和很多元素:
每个循环 16.4 µs ± 1.07 µs(7 次运行的平均值 ± 标准偏差,每次 100000 次循环)
每个循环 1.42 µs ± 174 ns(7 次运行的平均值 ± 标准偏差,每次 1000000 次循环)
即使对于 100.000 个元素,使用 numpy 似乎也更慢:
Numpy :每个循环 177 毫秒 ± 15.4 毫秒(7 次运行的平均值 ± 标准偏差,每次 1 个循环)
ListComprehension :每个循环 35.7 毫秒 ± 3.15 毫秒(7 次运行的平均值 ± 标准偏差,每次 10 次循环)
即使是 Pandas.Series 在我的测试中也比较慢:
每个循环 144 毫秒 ± 4.47 毫秒(7 次运行的平均值 ± 标准偏差,每次 10 次循环)