ValueError: invalid literal for int() with base 10: 'hello1 this3 world2 is4 a5 test6'
时间: 2023-08-10 12:21:58 浏览: 138
这个错误是因为你试图将字符串转换为整数,但是字符串中包含了字母和其他无法转换为数字的字符。你需要对字符串进行处理,将其中的数字部分提取出来,然后再转换为整数。你可以使用正则表达式来实现这个功能。以下是一个示例代码:
```python
import re
s = 'hello1 this3 world2 is4 a5 test6'
nums = re.findall(r'\d+', s) # 提取字符串中的数字部分
nums = [int(num) for num in nums] # 将数字字符串转换为整数
print(nums) # 输出:[1, 3, 2, 4, 5, 6]
```
这个代码使用 `re.findall` 函数提取字符串中所有的数字部分,然后使用列表推导式将数字字符串转换为整数。
阅读全文