輸入路徑'doc1/*。png'作爲第一個參數。Python argv採用通配符路徑
但它被轉換爲doc1/image1.png。
如何給出確切的參數?
img_list = [] print sys.argv[1] x = sys.argv[1] img_list = [img for img in glob.glob(x)]
輸入路徑'doc1/*。png'作爲第一個參數。Python argv採用通配符路徑
但它被轉換爲doc1/image1.png。
如何給出確切的參數?
img_list = [] print sys.argv[1] x = sys.argv[1] img_list = [img for img in glob.glob(x)]
大多數Linux殼(bash
,sh
,fish
,...),星號是由殼處理。 *
轉換爲文件列表的事實已在shell級別處完成。
如果你寫:
python file.py doc/*.png
的**殼將轉化成doc/*.png
"doc/1.png" "doc/2.png"
(所以.png
列表文件發現在doc
目錄
你應該使用引號傳遞。星號,如:
python file.py 'doc/*.png'
標準Windows外殼沒有而是爲文件名做通配符。
這不是真的在窗口,你有完全相反的問題,你必須使用'glob.glob' –
@ Jean-FrançoisFabre:謝謝。我不使用你看到的Windows :)我更喜歡[90年代的外殼](https://fishshell.com/):)。 –
這是在shell級別完成的。 –
嘗試在Linux上引用:'「doc1/*。png」' –
如果arg在命令行上使用單引號包裝,那麼shell不應擴展它。你在用什麼外殼? –