簡體   English   中英

為什么glob.glob和pathlib.Path.glob以不同方式處理隱藏文件?

[英]Why do glob.glob and pathlib.Path.glob treat hidden files differently?

考慮包含兩個文件的文件夾:

test/
    foo
    .bar

在此文件夾上調用glob.glob('*')將不會列出隱藏的.bar文件:

>>> glob.glob('test/*')
['test/foo']

pathlib.Path.glob('*')將:

>>> list(Path('test').glob('*'))
[PosixPath('test/.bar'), PosixPath('test/foo')]

我想知道這是有意還是可能是錯誤/疏忽。


glob模塊文檔聲明以點開頭的文件是特殊的:

glob將以點(。)開頭的文件名視為特殊情況

這意味着glob.glob('*')給出的結果是有意的。 但是pathlib的glob怎么樣? 我在文檔中找不到任何相關信息。 這是預期的行為嗎? 兩個函數不應該產生相同的結果嗎?

根據官方錯誤跟蹤器上的問題#26096 ,這種差異被認為not a bug ,因此完全是有意的。

歸功於@vaultah的發現。

暫無
暫無

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

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