如何在Python中替换多个字符串中的一个子字符串?

如何在Python中替换多个字符串中的一个子字符串?,python,python-2.7,Python,Python 2.7,假设我有多个字符串: string1 = "ab" string2 = "db" string3 = "eb" 如何在所有子字符串中替换相同的子字符串?假设我需要将“b”替换为“c”。我肯定能做到以下几点,但有没有一个简洁的单线解决方案 string1 = string1.replace("b", "c") string2 = string2.replace("b", "c") string3 = string3.replace("b", "c") 试着用一行字写出这个简洁的列表 试试这个简

假设我有多个字符串:

string1 = "ab"
string2 = "db"
string3 = "eb"
如何在所有子字符串中替换相同的子字符串?假设我需要将“b”替换为“c”。我肯定能做到以下几点,但有没有一个简洁的单线解决方案

string1 = string1.replace("b", "c")
string2 = string2.replace("b", "c")
string3 = string3.replace("b", "c")
试着用一行字写出这个简洁的列表


试试这个简洁的列表理解一行程序

您可以在列表理解中使用类并创建类方法:

class String:
   def __init__(self, s):
       self.s = s
   def replace(self, old, new):
      return self.s.replace(old, new)


string1 = "ab"
string2 = "db"
string3 = "eb"
l = [String(i).replace("b", "c") for i in [string1, string2, string3]]
输出:

['ac', 'dc', 'ec']

您可以在列表理解中使用类和创建类方法:

class String:
   def __init__(self, s):
       self.s = s
   def replace(self, old, new):
      return self.s.replace(old, new)


string1 = "ab"
string2 = "db"
string3 = "eb"
l = [String(i).replace("b", "c") for i in [string1, string2, string3]]
输出:

['ac', 'dc', 'ec']

在我看来,您似乎希望将字符串存储在数据结构中,比如列表,而不是将它们全部作为单个变量保存;然后你可以只做
strings=[string.replace(“b”,“c”)来替换字符串中的字符串]
听起来像是你想把字符串存储在一个数据结构中,比如一个列表,而不是把它们都作为单独的变量;然后你可以只做
strings=[string.replace(“b”,“c”)来替换字符串中的字符串]
在本例中使用类的优点是什么?在本例中使用类的优点是什么?