加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

在Windows中将带有星号的多个文件传递给python shell

发布时间:2020-12-13 20:43:28 所属栏目:Windows 来源:网络整理
导读:我正在进行Google的Python练习,我需要能够从命令行执行此操作: python babynames.py --summaryfile baby*.html 其中python是Python shell,babynames.py是Python程序,-summaryfile是我的babynames程序解释的参数,baby * .html是匹配该表达式的文件列表.但是,
我正在进行Google的Python练习,我需要能够从命令行执行此操作:
python babynames.py --summaryfile baby*.html

其中python是Python shell,babynames.py是Python程序,-summaryfile是我的babynames程序解释的参数,baby * .html是匹配该表达式的文件列表.但是,它不起作用,我不确定问题是Windows命令shell还是Python. baby * .html表达式没有扩展到完整的文件列表,而是严格地作为字符串传递.可以通过这种方式将多个文件传递给Python程序吗?

Windows的命令解释器不会像UNIX shell那样扩展通配符,然后再将它们传递给已执行的程序或脚本.
python.exe -c "import sys; print sys.argv[1:]" *.txt

结果:

['*.txt']

解决方案:使用glob模块.

from glob import glob
from sys import argv

for filename in glob(argv[1]):
    print filename

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读