将整数列表转换为Python中预定义字符串的列表

时间:2017-09-14 15:02:33

标签: python

当我们将0转换为'abc',1转换为'f'和2转换为'z'时,如何将列表[0,1,2,1]转换为字符串列表?因此输出列表将为['abc','f','z','f']

我做了:

x = []
for i in xrange(input):
  if input[i] == ...
    x.append ('abc')

2 个答案:

答案 0 :(得分:5)

使用字典作为翻译表:

old_l = [0, 1, 2, 1]
trans = {0: 'abc', 1: 'f', 2: 'z'}

然后,翻译你的清单:

new_l = [trans[v] for v in old_l]

答案 1 :(得分:1)

作为dict的替代方案,如果您可以保证数字是连续的,您可以使用列表和索引:

subs = ['abc','f','z'] 
original = [0, 1, 2, 1]

result = [subs[x] for x in original]

与dict相同,但输入的次数要少一些?

相关问题