1
我想从文件中读取一个数字并将其转换为int以便将其与值进行比较,但出现此错误:无效的文字为int()与基10: xef xbb xbf10
ValueError: invalid literal for
int()
with base 10:\xef\xbb\xbf10
我做这样的事情:
def check_id(str_id)
csvfile = file('strings.csv')
for csvline in csvfile:
parts = csvline.split('|')
if int(parts[0]) == str_id:
print "id found"
里面的文件就像一个表(这是一个CSV文件),里面,它看起来像这样:
10|item 10|description|information|price
这是文件的一行;有更多的行与几个ID,所以我想看看文件中是否存在一个ID。
我在做什么错?
这仍然没有解决问题,这似乎是编码问题。 用csv模块打开csv文件并读取第一列仍然给我同样的错误。 – amirelouti
在将数据馈送到csv解析器 –
发现问题之前,您自己删除BOM,您是对的。非常感谢帮助 – amirelouti