无法将字符串转换为 int - Python
Unable to convert a string into int - Python
我正在尝试将字符串转换为整数,如下所示:
money = "3,852.06"
original_amount = money[1:]
print(int(original_amount))
这里我必须对 'money' 变量进行切片,这样我才能得到准确的数字。
为此我收到此错误:
Traceback (most recent call last):
File "<string>", line 3, in <module>
ValueError: invalid literal for int() with base 10: '163,852.06'
有人可以帮我解决这个问题吗?
您的代码有两个问题:
您的号码中有一个逗号 - Python 不会将其解释为号码的有效部分。
您正在对表示浮点数的字符串应用 int()
转换 - 它具有小数部分。
这两个问题都解决了,
money = "3,852.06"
original_amount = ('').join(money[1:].split(','))
print(int(float(original_amount)))
代码用逗号拆分数字,然后立即将其连接成一个新的整体 - 这也适用于多个逗号。
然后它首先将字符串转换为浮点数,并使用该浮点数获取最终整数。
我正在尝试将字符串转换为整数,如下所示:
money = "3,852.06"
original_amount = money[1:]
print(int(original_amount))
这里我必须对 'money' 变量进行切片,这样我才能得到准确的数字。
为此我收到此错误:
Traceback (most recent call last):
File "<string>", line 3, in <module>
ValueError: invalid literal for int() with base 10: '163,852.06'
有人可以帮我解决这个问题吗?
您的代码有两个问题:
您的号码中有一个逗号 - Python 不会将其解释为号码的有效部分。
您正在对表示浮点数的字符串应用
int()
转换 - 它具有小数部分。
这两个问题都解决了,
money = "3,852.06"
original_amount = ('').join(money[1:].split(','))
print(int(float(original_amount)))
代码用逗号拆分数字,然后立即将其连接成一个新的整体 - 这也适用于多个逗号。
然后它首先将字符串转换为浮点数,并使用该浮点数获取最终整数。