在去掉不可见字符以后还是出现ValueError: invalid literal for int() with base 10: '1\u200b'报错,该如何解决
时间: 2023-06-17 07:02:25 浏览: 118
python 常见字符串与函数的用法详解
出现这个错误的原因是因为字符串中含有不可见字符,这些字符无法被转换成整数。可以使用正则表达式来去除不可见字符,示例代码如下:
```python
import re
s = '1\u200b'
s = re.sub(r'\W+', '', s)
num = int(s)
print(num)
```
这里使用了 `\W+` 表示匹配所有非单词字符,包括不可见字符。再使用 `re.sub` 方法替换掉这些不可见字符,最后将字符串转换为整数即可。
阅读全文