我使用目錄中的文件填充tkinter列表框。文件的名稱都以從01 - n開始的數字開頭。當我查看目錄中的文件時,它們按數字順序顯示。但是,當我將這些文件加載到列表框中時,它們不是以數字順序排列的。我可以改變前面的數字,但相同的文件將始終出現在同一個地方。目錄中的文件被錯誤的順序與python
我只是使用簡化的項目名稱來簡化這個例子。它仍然表明它們不是按字母順序或數字排序的。
列表應出現在我的列表框下面
01. itemA
02. itemB
03. itemC
04. itemD
但它顯示爲:
01. itemA
04. itemD
02. itemB
03. itemC
我可以改變周圍的領先數字,但該文件將總是在相同的填充順序(按名稱,而不是數字)。奇怪的是,它甚至不是字母順序。
我用這個
i = 0
for filename in os.listdir(directory):
fileList.insert(i, filename)
i = i + 1
這
for filename in os.listdir(directory):
fileList.insert(END, filename)
兩個結果是一樣的。
該文檔稱[ 「這份名單是在任意順序。」(http://docs.python.org/2/library/os.html#os.listdir)!也許是修改日期?你研究過其他可能性嗎? –
你可以嘗試'在排序(os.listdir(目錄))的文件名:'http://docs.python.org/2/library/functions.html#sorted – FabienAndre
@FabienAndre完美的工作,謝謝 – user1104854