也許我錯過了一些複雜性,但假設文件完全按照您的陳述佈置,您可以使用普通線條閱讀方法。在Python中,文件讀取在2和3版本中非常相似。 readline方法對你的情況特別有用。
因此,例如,你可以遍歷文件一次讀取三行,直到再結,像這樣:
def get_stations(file_name):
# open the file for reading
with open(file_name) as f:
# for every station name & location...
while True:
# get the name and strip out the newline character
name = f.readline().strip()
# if the name is empty then we've probably reached
# the end of the file
if name == '': break
# get the location in the same way we got the name
location = f.readline().strip()
# yield allows us to use this function in a for...in loop
yield name, location
# skip the blank line between stations
f.readline()
你會使用這個功能在一個for ... in循環,可能使用一個簡單的模板來輸出數據。
# Our template string. This could also be read in from a file.
# Anything in curly brackets is a {variable} name.
template = '''
<div class="CL_item">
<p class="CL_title">{station_name}</p>
<p class="CL_sub">{station_location}</p>
</div>'''
# create and open output.html for writing
with open('output.html', 'w') as f:
# loop through every station in the input.txt file
for name, location in get_stations('input.txt'):
# add the stations name and location using the template's format method
station_html = template.format(
station_name = name,
station_location = location
)
f.write(station_html)
請注意,我沒有真正嘗試過這樣,所以它可能需要適應您的特定文件,如果它包含任何怪癖。另外你應該知道格式函數不會從字符串中隱藏尖括號('<'和'>'),所以如果這是一個問題,你可能想查找如何在Python中轉義html。
你期待什麼?你在找人爲你編碼嗎?如果是這樣,你應該聘請一名程序員。另一方面,如果你有一些你寫的代碼不符合你的要求,請發佈它。我們可能會提供一些有用的提示。 –
好點。我只是在尋找正確的方向。比如,查看這種類型的動作,使用這種語言等。我真的不知道從哪裏開始。 – echo
您使用的是Linux機器嗎? – user454038