在某些字符后修剪Python字符串

use*_*274 0 python

我正在创建一个程序,将字节转换为 utf-16 字符串。但是,有时字符串会保留,因为有尾随 0,并且我的字符串最终会像这样:“这是我的字符串x00\x00\x00"。我想在到达第一个\x00x00指示尾随 0 时修剪字符串。我该如何在Python?

我的问题不是评论中链接的另一个问题的重复,因为 trim() 不能完全工作。如果我有一个字符串“这是我的字符串x00\x00嗨那里x00\x00"”我只想“这是我的字符串”而修剪将返回“这是我的字符串嗨那里”

Jac*_*yte 5

用于index('\x00')获取第一个空字符的索引并将字符串切片到索引;

mystring = "This is my string\x00\x00\x00hi there\x00"
terminator = mystring.index('\x00')

print(mystring[:terminator])
# "This is my string"
Run Code Online (Sandbox Code Playgroud)

您还可以split()在空字符上;

print(mystring.split(sep='\x00', maxsplit=1)[0])
# "This is my string"
Run Code Online (Sandbox Code Playgroud)