循环遍历Python列表中的字符串元素并进行替换

时间:2014-05-01 18:06:46

标签: python string list substitution

我有一个如下所示的列表:

>>> lst = ['yaktub', 'naktub', 'taktub']

我知道如何遍历列表中的项目。但我想循环遍历列表中每个元素的字符并进行替换。我将在下面提供一个伪代码:

for item in lst: 
      for char in lst[item]:
          if lst[item][0] in 'ynt':


                lst[item][0] = char
          elif lst[item][1] in 'a':
                  lst[item][1] = 'a'
          elif lst[item][2] in 'k':
                lst[item][2] = 'f'
       newlst.append(item)
return newlest

等等。如果你能指导我如何使用indix赋值而不是切片,我将不胜感激。

3 个答案:

答案 0 :(得分:0)

您应该使用translate,例如:

lst = ['yaktub', 'naktub', 'taktub']
for word in lst:
    print(word.translate(str.maketrans("yntak", "yntaf")))

哪个输出:

yaftub
naftub
taftub

请注意,第一个列表是您要替换的字符,第二个列表是您要在新字符串中显示的字符。

答案 1 :(得分:0)

在python中,字符串只是一个列表     'string'== ['s','t','r','i','n','g'] 然后

lst = ['yaktub', 'naktub', 'taktub']
newlst = []
for item in lst: 
      for char in item:
          if char in 'ynt':
              #your operation here
          elif char in 'a':
              #other code here
       newlst.append(item)
return newest

我希望这可以帮到你

答案 2 :(得分:0)

因为我不确定请求是否是,但最好是尝试这个

def convert_word(word):
    ....your code here and add return statement

map(convert_word,list_to_convert)

你去吧!

请下次尝试更好地解释要求