在 Python 中从字符串中删除 \x00
Remove \x00 from a string in Python
使用该str.replace()
方法从字符串中删除 \x00,例如
result = my_str.replace('\x00', '')
. 该方法将通过用空字符串替换它们来str.replace()
删除出现的字符。\x00
主程序
my_str = 'Apple\x00\x00\x00\x00\x00' # ✅ remove \x00 from string using str.replace() result = my_str.replace('\x00', '') print(result) # 👉️ 'Apple' print(repr(result)) # 👉️ 'Apple' # ---------------------------------------- # ✅ remove \x00 from string using str.rstrip() result = my_str.rstrip('\x00') print(result) # 👉️ 'Apple' print(repr(result)) # 👉️ 'Apple' # ---------------------------------------- # ✅ remove \x00 from list of strings my_list = ['apple\x00', 'banana\x00'] result = [string.replace('\x00', '') for string in my_list] print(result) # 👉️ ['apple', 'banana']
该\x00
字符是一个 Null 字符,表示一个所有位都为 0 的 HEX 字节。
第一个示例使用该
str.replace()
方法将所有出现的字符替换为空字符串。str.replace方法返回字符串
的副本,其中所有出现的子字符串都被提供的替换项替换。
该方法采用以下参数:
姓名 | 描述 |
---|---|
老的 | 字符串中我们要替换的子串 |
新的 | 每次出现的替换old |
数数 | 只count 替换第一次出现的(可选) |
请注意,该方法不会更改原始字符串。字符串在 Python 中是不可变的。
如果\x00
字符只是在字符串的末尾,也可以使用该
str.rstrip()
方法。
主程序
my_str = 'Apple\x00\x00\x00\x00\x00' result = my_str.rstrip('\x00') print(result) # 👉️ 'Apple' print(repr(result)) # 👉️ 'Apple'
str.rstrip方法返回删除
尾随字符的字符串副本。
我们将\x00
字符传递给方法,因此\x00
字符串末尾出现的所有字符都将被删除。
请注意,这仅在所有
\x00
字符都位于字符串末尾时才有效。在所有其他情况下,请使用该方法。 str.replace()
从 Python 中的字符串列表中删除 \x00
从字符串列表中删除\x00
字符:
- 使用列表理解来遍历列表。
- 在每次迭代中,使用该
str.replace()
方法删除出现的
\x00
. - 新列表中的字符串将不包含任何
\x00
字符。
主程序
my_list = ['apple\x00', 'banana\x00'] result = [string.replace('\x00', '') for string in my_list] print(result) # 👉️ ['apple', 'banana']
我们使用列表理解来迭代列表。
列表推导用于对每个元素执行一些操作,或者选择满足条件的元素子集。
\x00
在每次迭代中,我们用空字符串替换出现的字符并返回结果。