python逻辑出错

import re
waiye=open("外业记录表.txt")
photo=open("照片文件列表.txt","r+")
xiugai=open("修改杆塔名称.txt")
chengguo=open("修改后的照片排序.txt","w")
photo1=photo.readlines()
waiye1=waiye.readlines()
xiugai1=xiugai.readlines()
b="".join(waiye1)
c="".join(photo1)
d="".join(xiugai1)
i=-1
count=len(waiye1)-2
while i>=-1 and i<=count:
i+=1
waiye2=waiye1[i]
xiugai2=xiugai1[i]
photo2=photo1[i]
if waiye2.strip() in c:
## print(photo2)
photo3=c.replace(photo2,xiugai2)
print(photo3)
## chengguo.write(photo3)
## else:
## print("无此记录")
photo.close()
waiye.close()
xiugai.close()
chengguo.close()
怎么修改逻辑,只输出一条记录
怎么修改逻辑,photo3,只输出一条每行都修改的结果

import re
waiye=open('外业记录表.txt')
photo=open("照片文件列表.txt","r+")
xiugai=open("修改杆塔名称.txt")
chengguo=open("修改后的照片排序.txt","w")
photo1=photo.readlines()
waiye1=waiye.readlines()
xiugai1=xiugai.readlines()
b="".join(waiye1)
c="".join(photo1)
d="".join(xiugai1)
i=-1
count=len(waiye1)-2
while i>=-1 and i<=count:
i+=1
waiye2=waiye1[i]
xiugai2=xiugai1[i]
photo2=photo1[i]
if waiye2.strip() in c:
photo3=c.replace(photo2,xiugai2)
print(photo3)
photo.close()
waiye.close()
xiugai.close()
chengguo.close()

上面这段代码没有对
chengguo=open("修改后的照片排序.txt","w")
进行操作,只是print输出而已
我没太明白你想表达什么,但是我认为是你的缩进有问题。你得保证严格的缩进。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-20
建议添加一个for循环,每次读取photo3中的一行,然后输出追问

我是通过i的值,把photo中每一行的记录都修改好了,再输出。请问您说的for循环是用哪个条件

追答

用photo文件的行数来循环