簡體   English   中英

glob.glob 回饋無序文件

[英]glob.glob giving back unordered files

我有一個包含多個圖像文件的目錄,這些文件都稱為f"name{i}" for i in range(64)。 閱讀它們后,我正在對每張圖像執行操作。 要遍歷我使用的目錄中的所有圖像:

img_list = []
    for img in glob.glob(rf"name_results\*.png"):
        img_list.append(img)
        img_list.sort(reverse=True)
        print(img)

我拼命嘗試對列表進行排序,但這似乎對 output 沒有任何影響:

name_results\name0.png
name_results\name1.png
name_results\name10.png
name_results\name11.png
name_results\name12.png
name_results\name13.png
name_results\name14.png
name_results\name15.png
name_results\name16.png
name_results\name17.png
name_results\name18.png
name_results\name19.png
name_results\name2.png
name_results\name20.png
name_results\name21.png
name_results\name22.png
name_results\name23.png
name_results\name24.png
name_results\name25.png
name_results\name26.png
name_results\name27.png
name_results\name28.png
name_results\name29.png
name_results\name3.png
name_results\name30.png
name_results\name31.png
name_results\name32.png
name_results\name33.png
name_results\name34.png
name_results\name35.png
name_results\name36.png
name_results\name37.png
name_results\name38.png
name_results\name39.png
name_results\name4.png
name_results\name40.png
name_results\name41.png
name_results\name42.png
name_results\name43.png
name_results\name44.png
name_results\name45.png
name_results\name46.png
name_results\name47.png
name_results\name48.png
name_results\name49.png
name_results\name5.png
name_results\name50.png
name_results\name51.png
name_results\name52.png
name_results\name53.png
name_results\name54.png
name_results\name55.png
name_results\name56.png
name_results\name57.png
name_results\name58.png
name_results\name59.png
name_results\name6.png
name_results\name60.png
name_results\name61.png
name_results\name62.png
name_results\name63.png
name_results\name7.png
name_results\name8.png
name_results\name9.png

不知道我能做些什么來將它們存儲在一個列表中,就好像它是f"name{i}" for i in range(64) 含義從 name1.png 到 name63.png 以升序排列。

使用key in 進行排序:

import re
img_list = [f"name_results\name{i}" for i in range(12)]
img_list.sort(key=lambda x: int(re.findall(r'\d+',x )[0]))
img_list

output:

['name_results\name0',
 'name_results\name1',
 'name_results\name2',
 'name_results\name3',
 'name_results\name4',
 'name_results\name5',
 'name_results\name6',
 'name_results\name7',
 'name_results\name8',
 'name_results\name9',
 'name_results\name10',
 'name_results\name11']

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM