我有一个带有一些十六进制数字的文本文件,我正在尝试将其转换为十进制。我可以成功转换它,但似乎在循环存在之前它会读取一些不需要的字符,因此我遇到了以下错误。
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)
每个十六进制数字都在新行中输入
追溯表明文件末尾可能有一个空行。您可以这样解决:
f = open('test.txt','r')
g = open('test1.txt','w')
while True:
x = f.readline()
x = x.rstrip()
if not x: break
print >> g, int(x, 16)
另一方面,最好使用for x in f
代替readline
。不要忘记关闭文件,或者更好地使用with
该文件来关闭它们:
with open('test.txt','r') as f:
with open('test1.txt','w') as g:
for x in f:
x = x.rstrip()
if not x: continue
print >> g, int(x, 16)
问题内容: 例如,假设我想列出一个字符串中每个字母的频率。最简单的方法是什么? 这是我在想的一个例子…问题是如何使allTheLetters等于所说的字母,而没有allTheLetters =“ abcdefg … xyz”之类的东西。在许多其他语言中,我可以只做字母+ +来增加字母的顺序,但是到目前为止,我还没有找到在python中做到这一点的方法。 问题答案: 您所问的问题(如何遍历字母)与您
问题内容: 我需要遍历给定目录内的所有文件并对它们执行一些操作。 如何有效地做到这一点? 问题答案: 原始答案: 上面答案的Python 3.6版本,使用-假设你将目录路径作为str对象包含在名为的变量中: 或递归地使用:
问题内容: 如何遍历由空行分隔的线段?该文件如下所示: 我想遍历这些块并在3列列表中获取“名称”,“姓氏”和“年龄”字段: 问题答案: 这是使用itertools.groupby的另一种方法。该函数遍历文件的每一行并为每行调用。返回True或False(称为),然后对产生相同True或False结果的所有连续行进行分组。 这是将行收集到组中的一种非常方便的方法。
问题内容: 我有一个目录日志文件。我想使用Python脚本处理此目录中的每个文件。 我该怎么做呢? 问题答案: 使用或,取决于您是否要递归执行。
我试图做一个Python代码,遍历父文件夹中的所有子文件夹,并将子文件夹内容移动到父文件夹。我在python中使用os.walk函数,但它也一直选择父文件夹中的文件。有没有办法解决这个问题...
问题内容: 我有一个Map如下所示的bean: 这ftqSet适合以下数据结构: 在我的测试JSP文件中,我一直在尝试使用来访问数据 : 但是它没有输出${f.feedId}。为什么会这样呢?我将如何访问该结构的各个元素,以便创建一个漂亮的表? 问题答案: 的每次迭代中给出了一个实例,它反过来又和getValue()方法。这与在普通Java中进行操作类似。 例如 在的情况下, 的回报, ,所以你需