以下代码失败,如果是文件结尾而不是空行。这是一个简单的解析器,它会查找=
符号,然后在读取空行时立即返回内容
def readFile():
keyFlag=False
for line in open(AAA,"r").readlines():
if "=" in line: keyFlag=True
if key.Flag: content+=line
if line.ispace(): return content
问题是当文件结束时,for循环停止。除了插入标志之外,还有一种优雅的循环方法吗?
答案 0 :(得分:2)
如果该行为空白,您应该在循环之外return
,然后在循环内只有break
。
def readFile():
flag = False
content = ""
for line in open(AAA):
if '=' in line:
flag = True
if flag:
content += line
if line.isspace():
break
return content
答案 1 :(得分:1)
使用while循环:
data = open(AAA,"r").readlines()
i = 0
while i < len(data):
content+= data[i]
i+=1
return content