我計算學生誰張貼a question here the other day about helping me with my function to sort scores in order和我得到了一些很大的幫助,現在的作品,但我也希望它的名字根據分數(排序,以便如果詹姆斯得到10則。打印「詹姆斯·10」現在正在發生的事情是,分數排序和打印到屏幕上正確,但名字都在他們的輸入順序只是打印我已經試過這樣:排序名稱以及分數
def sortlist():
global scorelist, namelist, hss
namelist = []
scorelist = []
hs = open("hstname.txt", "r")
namelist = hs.read().splitlines()
hss = open("hstscore.txt","r")
for line in hss:
scorelist.append(int(line))
switched = True
while switched:
switched = False
for i in range(len(scorelist)-1):
for j in range(len(namelist)-1):
if scorelist[i] < scorelist[i+1]:
scorelist[i],scorelist[i+1] = scorelist[i+1],scorelist[i]
namelist[j],namelist[j+1] = namelist[j+1],namelist[j]
switched = True
比分部分工作正常,但我花了年齡得到它,我不能使用預先定義的函數一樣的.sort()。任何人都可以提供任何幫助/建議嗎?或者,如果你能看到我在做什麼錯那麼你能提供一個解決方案嗎?我無法爲我的生活工作
你需要有2個列表,或者你可以將它們組合成一個嗎? – IanAuld
@IanAuld我原來有一個名單,但通過這個項目的過程中我已爲兩個列表,我希望保持這樣說,這是因爲我的理解是,它幾乎是來不及去改變太多的東西 – user3333868