大家好,又见面了,我是你们的朋友全栈君。
Sometimes we want to remove all occurrences of a character from a string. There are two common ways to achieve this.
有时我们想从字符串中删除所有出现的字符。 有两种常见的方法可以实现此目的。
Python从字符串中删除字符 (Python Remove Character from String)
- Using string replace() function
使用字符串replace()函数
- Using string translate() function
使用字符串translate()函数
Python使用replace()从字符串中删除字符 (Python Remove Character from String using replace())
We can use string replace() function to replace a character with a new character. If we provide an empty string as the second argument, then the character will get removed from the string.
我们可以使用字符串replace()函数将一个字符替换为一个新字符。 如果我们提供一个空字符串作为第二个参数,则该字符将从字符串中删除。
Note that the string is immutable in Python, so this function will return a new string and the original string will remain unchanged.
请注意,该字符串在Python中是不可变的,因此此函数将返回一个新字符串,而原始字符串将保持不变。
s = 'abc12321cba'
print(s.replace('a', ''))
Output: bc12321cb
输出: bc12321cb
Python使用translate()从字符串中删除字符 (Python Remove Character from String using translate())
Python string translate() function replace each character in the string using the given translation table. We have to specify the Unicode code point for the character and ‘None’ as a replacement to remove it from the result string. We can use ord() function to get the Unicode code point of a character.
Python字符串translate()函数使用给定的转换表替换字符串中的每个字符。 我们必须指定字符的Unicode代码点,并用’None’替换以将其从结果字符串中删除。 我们可以使用ord()函数获取字符的Unicode代码点。
s = 'abc12321cba'
print(s.translate({ord('a'): None}))
Output: bc12321cb
输出: bc12321cb
If you want to replace multiple characters, that can be done easily using an iterator. Let’s see how to remove characters ‘a’, ‘b’ and ‘c’ from a string.
如果要替换多个字符,可以使用迭代器轻松完成。 让我们看看如何从字符串中删除字符“ a”,“ b”和“ c”。
s = 'abc12321cba'
print(s.translate({ord(i): None for i in 'abc'}))
Output: 12321
输出: 12321
从字符串中删除空格 (Removing Spaces from a String)
s = ' 1 2 3 4 '
print(s.replace(' ', '')) # 1234
print(s.translate({ord(i): None for i in ' '})) # 1234
Python从字符串中删除换行符 (Python Remove newline from String)
s = 'ab\ncd\nef'
print(s.replace('\n', ''))
print(s.translate({ord('\n'): None}))
从字符串中删除子字符串 (Remove substring from string)
String replace() function arguments is string. Let’s see how to remove a word from a string.
字符串replace()函数参数是字符串。 让我们看看如何从字符串中删除单词。
s = 'ab12abc34ba'
print(s.replace('ab', ''))
Output: 12c34ba
输出: 12c34ba
删除指定的次数 (Remove specified number of times)
We can also pass a third parameter in replace() function to specify the number of times replacement should be performed.
我们还可以在replace()函数中传递第三个参数,以指定应该执行替换的次数。
s = 'abababab'
print(s.replace('a', 'A', 2))
Output: AbAbabab
输出: AbAbabab
翻译自: https://www.journaldev.com/23674/python-remove-character-from-string
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/142002.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...