我想做这样的事情:

c:\data\> python myscript.py *.csv

并将目录中的所有.csv文件传递到我的python脚本(这样sys.argv包含["file1.csv", "file2.csv"]等)

但是sys.argv刚收到["*.csv"],指示通配符未扩展,因此这不起作用。

我觉得有一个简单的方法可以做到这一点,但是在Google上找不到。有任何想法吗?

最佳答案

您可以使用glob模块,这样您就不必依赖特定shell的行为了(嗯,您仍然依赖于shell不扩展参数,但是至少可以通过转义通配符来使它在Unix中发生:-))。

from glob import glob
filelist = glob('*.csv') #You can pass the sys.argv argument

关于python - 将带有通配符的参数传递给Python脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/405652/

10-16 20:42