[英]Why does my code keep stopping?
我編寫了一個Python腳本,該腳本讀取一個文本文件,然后轉到一個url,並將文本文件中的擴展名添加到該url。 問題在於腳本在完成讀取文件之前會不斷停止。 我不知道為什么。
import urllib
f = open("extension/1.txt", 'r')
for x in f.readline():
a = f.readline()
url = "http://www.link.com/whatever/%s" % a
print url
urllib.urlretrieve(url, a)
通過for x in f.readline():
調用for x in f.readline():
,您將遍歷作為文件首行的string
,然后通過a = f.readline()
為第一行中的每個字符換行。 a = f.readline()
。 我不認為這是您的意圖。
file
對象f
本身是可迭代的,因此您只需執行以下操作:
for line in f:
value = line.rstrip('\n')
url = "http://www.link.com/whatever/%s" % value
print url
urllib.urlretrieve(url, value) # Not sure why you want to send value (your a) here
您的代碼執行以下操作:
f.readline()
)。 for x in f.readline()
),讀取另一行( a = f.readline()
)並進行處理。 因此,它將僅處理與文件第一行中的字符一樣多的行,並且將永遠不會處理第一行。
您可能希望將該循環編寫為:
with open("extension/1.txt") as f:
for a in f:
a = a.strip()
url = "http://www.link.com/whatever/%s" % a
print url
urllib.urlretrieve(url, a)
也許像這樣一開始閱讀所有內容:
fp = open(the_file)
lines = fp.readlines()
fp.close()
for line in lines:
do something
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.