亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

執行到后面就死循環了,這是怎么回事啊?

執行到后面就死循環了,這是怎么回事???

jeck貓 2022-12-18 12:08:04
#!/usr/bin/python#Filename: bidui.py#_*_coding:utf-8_*_import glob, os, re ,os.path,datetime path_a = 'e:\\case\\' path_b = 'e:\\1\\'  a_files = glob.glob('%s\\*' % path_a) b_files = glob.glob('%s\\*' % path_b)flie3 = open('testresult.txt', 'a') # open for 'w'ritingfor f in a_files:file_name = os.path.basename(f) file_name_in_folder_b = re.subn(r'\d{8}_\d{2}_\d{2}_\d{2}_', '', file_name) full_path = '%s\\%s' % (path_b, file_name_in_folder_b)full_patha = '%s\\%s' % (path_a, file_name)print (file_name)if full_path in b_files:file_in_a = open(full_patha, 'r')line2 = file_in_a.readline()file_in_b = open(full_path, 'r')line = file_in_b.readline()while True:  if len(line) == 0 and len(line2) == 0: break  if line == line2:flie3.write('pass')else:print ('failed')flie3.write('fail')file_in_a.close()file_in_b.close()flie3.close()這是我寫的一段文本比對程序 用了比對2個文件的內容的結果循環到 if line == line2:flie3.write('pass')
查看完整描述

2 回答

?
拉莫斯之舞

TA貢獻1820條經驗 獲得超10個贊

if len(line) == 0 and len(line2) == 0: 
break  
==>
if len(line) == 0 or len(line2) == 0: 
break

查看完整回答
反對 回復 2022-12-21
?
喵喵時光機

TA貢獻1846條經驗 獲得超7個贊

你寫了while True了一定是個死循環~至少每個分支后面和close后面要break吧

查看完整回答
反對 回復 2022-12-21
  • 2 回答
  • 0 關注
  • 125 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號