Skip to main content
 首页 » 编程设计

Python之拆分包含 '\x' 的字符串

2025年05月04日20kuangbin

我只想要这里的数字,它是科学计数法。下面的输出是终端的 Python 解释器输出。怎么办呢。

添加信息:字符串的长度并不总是相同,因此没有字符。长度快捷方式...后缀也不总是相同的。

>>> x 
[' 1.9580000000000002E-05\xef\xbb\xbf\r\n'] 
>>> x[0].split('\\') 
[' 1.9580000000000002E-05\xef\xbb\xbf\r\n'] 
>>> 

期望的输出:

1.9580000000000002E-05 

请您参考如下方法:

>>> import re 
>>> x = [' 1.9580000000000002E-05\xef\xbb\xbf\r\n'] 
>>> float(re.search(r'\d\.\d*E[+-]\d+',x[0]).group()) 
1.9580000000000002e-05 

但是,根据文本的编码以及从何处获取数据,这可能更“正确”:

>>> float(x[0].decode('utf8').encode('ascii', 'ignore').strip()) 
1.9580000000000002e-05