我有一个带有一些十六进制数字的文本文件,我试图将它转换为十进制。我可以成功转换它,但似乎在循环存在之前它读取一些不需要的字符,所以我得到以下错误。如何迭代python中的文件
Traceback (most recent call last):
File "convert.py", line 7, in <module>
print >>g, int(x.rstrip(),16)
ValueError: invalid literal for int() with base 16: ''
我的代码如下
f=open('test.txt','r')
g=open('test1.txt','w')
#for line in enumerate(f):
while True:
x=f.readline()
if x is None: break
print >>g, int(x.rstrip(),16)
每个十六进制数来在输入新行
嘛,拿调试,并找出问题的“X”值引起的问题。也许你有一个BOM文件? – 2011-04-20 16:20:15
@RestRisiko:如果有BOM,错误信息会显示。不,它只是试图将空字符串''''提供给'int'。 – delnan 2011-04-20 16:21:11