個人用の .txt ファイルがあり、各個人の隣に 2 回あります。これは.txtファイルです
Xantippe 09:00 11:00
Erica 10:00 12:06
Marcia 09:30 11:45
Elizabeth 10:15 12:10
Angela 11:30 13:45
Freda 12:00 14:20
Maria 12:30 14:10
ファイルを読み取ってから、各行を取得して読み取り、2 回目でリスト全体を並べ替える必要があります。ファイル内の数値は文字列オブジェクトであることを忘れないでください。したがって、基本的に最も早い時間、つまり 11:00 は、以前の時間と名前とともにリストの一番上にあるはずです。例えば。Xantippe 09:00 11:00
そして、別の行で次の行など。
これまでのところ、私はやっています:
from Practise1 import timeCalc
with open('LadiesRace.txt', 'r') as f:
readf = f.read();
timeX = timeCalc()
lis = readf.split('\n')
with open('sortByFinishTime.txt','w') as w:
def compare(x,y):
if x[1] > y[1]:
return 1
if x[1] < y[1]:
return -1
return 0
#lis.sort()
for l in lis:
#line = l.strip()
slist = l.split(' ')
print slist[2]
問題は、辞書を使用できず、リストのみを使用できることです。リストを名前で昇順に並べ替えることができましたが、前回はどのように並べ替えるのですか?