【发布时间】:2017-09-26 09:09:40
【问题描述】:
我有一组名字:
>>> name_set = {'A.C. Johnson',
'Adrian Jefferson',
'Albus Jung',
'Al Frank',
'Alex English',
'Allen Peters'}
>>> type(name_set)
set
有些名称需要调整。例如,我需要:
name_set = {'A.C. Johnson15',
'Adrian Jefferson',
'Albus Jung',
'Al Frank',
'Alex English40',
'Allen Peters35'}
我试过了:
name_set.remove("A.C. Johnson")
name_set.add("A.C. Johnson15")
我试图避免重复这个^所以
我也试过:
fixed_name_set = [name.replace('A.C. Johnson', 'A.C. Johnson15') for name in name_set]
这^是一行,但仍需要重复替换多个名称。所以我尝试了类似的方法:
fixed_name_set = [name.replace(('A.C. Johnson', 'A.C. Johnson15'), ('Alex English', 'Alex English40')) for name in combined_top_players]
类似于这个^的解决方案是理想的,但会产生TypeError: Can't convert 'tuple' object to str implicitly
用另一个值替换多个唯一字符串的pythonic解决方案是什么?
【问题讨论】:
标签: python python-3.x list set