如何将字符串“70”(使用Apostrophes)转换为长
代码:
gap = long(x.film_index)- long (expected_film)
错误:ValueError:long()的基数为10的文字无效:'“70”'
答案 0 :(得分:4)
strip
取消引号。
>>> x = "\"70\""
>>> long(x.strip("\""))
70L
答案 1 :(得分:1)
您可以使用正则表达式仅提取给定字符串中的数字:
import re
long(re.match(r'\d+', '"70"').group())
但是,如果您知道您的号码将始终包围"
s,那么您可以轻松地从其中构建新的int
,而无需使用第一个和最后一个字符:
long('"70"'.strip('"')) # or long('"70"'.replace('"', ''))
答案 2 :(得分:1)
如何首先使用replace()
删除引号?
>>> x = '"70"'
>>> x
'"70"'
>>> long(x)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for long() with base 10: '"70"'
>>> long(x.replace('"', ''))
70L