Python教程-从Python中的字符串中删除多个字符
我们已经知道字符串被定义为字符序列,我们可以对它们执行各种操作。
在本教程中,我们将学习如何使用Python中的字符串执行另一个有趣的任务。
在这里,我们将看到如何从字符串中删除多个字符。
我们已经列出了我们将学习以实现目标的方法。
- 使用嵌套的replace()
- 使用translate()和maketrans()
- 使用subn()
- 使用sub()
使用嵌套的replace()
在下面给出的程序中,我们将看到如何使用replace()来从字符串中删除多个字符。
#initializing the string
string_val = 'learnpythonlearn'
#displaying the string value
print("The initialized string is ", string_val)
#using nested replace()
res_str = string_val.replace('l', '%temp%').replace('l', 'e').replace('%temp%', 'e')
#printing the resultant string
print ("The string after replacing the characters is ", res_str)
输出:
The initialized string is learnpythonlearn
The string after replacing the characters is eearnpythoneearn
解释-
- 在第一步,我们初始化了要替换字符的字符串。
- 然后,我们显示原始字符串,以便我们可以轻松地理解这与期望的输出之间的差异。
- 现在,我们使用replace(),并指定我们希望删除或更改的字符。
- 执行程序后,将显示所需的输出。
在第二个程序中,我们将看到如何使用translate()和maketrans()来执行相同的操作。用户必须记住这一点,它只在Python 2中有效。
使用translate()和maketrans()
下面的程序显示了如何执行此操作。
import string
#initializing the string
string_val='learnpythonlearn'
#displaying the string value
print("The initialized string is ",string_val)
#using translate() & maketrans()
res_str=string_val.translate(string.maketrans('le','el'))
#printing the resultant string
print("The string after replacing the characters is ",res_str)
输出:
The initialized string is learnpythonlearn
The string after replacing the characters is eearnpythoneearn
解释-
- 在第一步,我们导入了帮助我们使用所需函数的re模块。
- 然后,我们初始化了要替换或删除其字符的字符串。
- 下一步是定义一个函数,该函数以字符串值作为其参数。
- 在函数定义中,我们使用replace(),并指定我们希望删除或更改的字符。
- 执行程序后,将显示所需的输出。
现在我们将讨论如何使用re.subn()来实现这一目标。subn()返回一个带有替换总数的新字符串。
使用re.subn()
下面给出的程序显示了如何执行此操作。
#importing the re module
import re
#initializing the string value
string_val = "To get the result 100, we can multiply 10 by 10"
#defining the function
def pass_str(string_val):
string_val, n = re.subn('[0-9]', 'A', string_val)
print (string_val)
#displaying the resultant value
pass_str(string_val)
输出:
To get the result AAA, we can multiply AA by AA
解释-
- 在第一步,我们导入了re模块,该模块将帮助我们使用所需的函数。
- 然后,我们初始化了要替换或删除其字符的字符串。
- 下一步是定义一个函数,该函数以字符串值作为其参数。
- 在函数定义中,我们使用subn(),它接受三个参数。第一个参数是我们希望替换的模式,第二个是我们想要替换它的元素或数字,第三个是字符串。
- 最后,末尾的print语句显示已处理的字符串。
- 我们在末尾传递了这个字符串,以便我们获得所期望的输出。
在最后一个程序中,我们将使用sub()来执行相同的操作。
使用re.sub()
下面给出的程序说明了如何执行此操作-
#importing the re module
import re
#initializing the string value
string_val = "To get the result 100, we can multiply 10 by 10"
#defining the function
def pass_str(string_val):
string_val = re.sub('[0-9]', 'Z', string_val)
print(string_val)
#displaying the resultant value
pass_str(string_val)
输出:
To get the result ZZZ, we can multiply ZZ by ZZ
解释-
- 在第一步,我们导入了re模块,该模块将帮助我们使用所需的函数。
- 然后,我们初始化了要替换或删除其字符的字符串。
- 下一步是定义一个函数,该函数以字符串值作为其参数。
- 在函数定义中,我们使用sub(),它接受三个参数。第一个参数是我们希望替换的模式,第二个是我们想要替换它的元素或数字,第三个是字符串。
- 最后,末尾的print语句显示已处理的字符串。
- 我们在末尾传递了这个字符串,以便我们获得所期望的输出。
结论
在本教程中,我们学习了如何使用Python从字符串中删除多个字符。