删除字符串中的特定字符时出现问题

时间:2017-09-06 05:07:53

标签: python-3.x

我一直得到TypeError:只能加入一个iterable。 我试图从python中的字符串中删除特定字符。

def get_2s_and_5s_removed(dice_string):   
    dice_string =list(dice_string)
    if '2' in dice_string:
      dice_string =dice_string.remove('2')
      return ''.join(dice_string)
    if '5' in dice_string:
      dice_string =dice_string.remove('5')
      return ''.join(dice_string)**

2 个答案:

答案 0 :(得分:3)

Python的remove方法修改了列表本身,并且不返回包含原始列表减去删除值的新列表。使用它的正确方法是:dice_string.remove('2')(即不要使用等号,因为它会将NoneType赋给变量)。

答案 1 :(得分:3)

假设您要删除所有 2s和5s,正如函数名称所暗示的那样,您真正需要的只是.replace

>>> '11223245565'.replace('2','').replace('5','')
'11346'