从 Python 中的字符串中删除 \x00
使用 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
字符是一个空字符,它代表一个所有位都为 0 的 HEX 字节。
第一个示例使用 str.replace()
方法将所有出现的字符替换为空字符串。
str.replace
方法返回字符串的副本,其中所有出现的子字符串都被提供的替换替换。
该方法采用以下参数:
- old 字符串中我们要替换的子字符串
- new 每次出现 old 的替换
- count 仅替换第一个 count 事件(可选)
请注意
,该方法不会更改原始字符串。 字符串在 Python 中是不可变的。
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
字符替换为空字符串并返回结果。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。