Python 字符串转整数

Python string conversion to integer

我想使用 Python 解析一些数据并做进一步的计算。我在下面的 soup 变量中提供了我解析的数据示例。我想将第 5 个值(逗号切片后)从字符串转换为整数以供进一步处理,但我收到一条消息说 invalid literal for int() with base 10: '36.60'。你能帮我找出我做错了什么吗?

脚本:

soup = '3-Jan-17,36.61,36.93,36.27,36.60,20196466'
soupy = soup.split('\n')

for line in soupy:
    z = line.split(',')
    yy = z[4]
    zz = int(yy)

留言:

ValueError: invalid literal for int() with base 10: '36.60'

zz = int(yy) 应该是 zz = float(yy) 如果您想将其转换为 int,请执行以下操作:

int(float(yy))

这将 truncate towards 0

您收到此错误是因为程序无法识别字符串中的 . 符号。整数不应该有小数部分,但你的字符串 "36.60" 看起来像有小数部分。

您可以使用 int(float(yy)) 来获取 36