无法将字符串转换为整数。出现错误:
ValueError:以10为底的int()无效文字:'2674'
我已经阅读了许多答案,其中大多数不起作用的原因是因为它是一个浮点数,并且人们使用int(),但在这里显然是整数。
like1 = '2,674 likes'
number = int(like1.split()[0])
print('This is the numer ::',number)
我希望代码能正常运行并打印出数字。我的实际实现是将其与整数进行比较。例如。数字> 1000,但这引发了您无法比较字符串和整数的错误,因此我想将其修改为整数。我不想发布该代码,因为它又大又乱。
如果我错过了必填信息,请要求澄清!
答案 0 :(得分:1)
您的问题是2,674
中的逗号。某些位置将其用作小数点,但您的位置却没有,因此您希望它以整数分隔三位数字的组。 Python不会以这种方式使用它。
因此,请删除逗号或将其更改为下划线_
,Python的最新版本允许使用整数。由于我不知道您使用的Python版本,因此建议您删除逗号。使用这个:
number = int(like1.split()[0].replace(',', ''))
顺便说一句,您在问题顶部显示的错误消息不是实际的错误消息。实际消息在字符串中显示逗号:
ValueError:以10为底的int()无效文字:'2,674'
如果您继续在本网站上提问,请确保显示实际错误。实际上,您应该复制并粘贴整个回溯,而不仅仅是最后一行。这将帮助我们正确理解您的问题并为您提供帮助。