python - 将命令行参数转换为 Python 中的标准输入

标签 python command

如何将接受命令行参数的脚本转换为能够通过标准用户输入接收参数?

目前我有一个文件,要处理它,我需要运行python abc.py query 而我希望该文件能够通过 python abc.py 运行,然后在下一行中它应该要求用户通过 raw_input 输入,响应应该是传递给参数(即“查询”)。

最佳答案

如果不更改 abc.py 本身,就无法实现这一点。

如果您可以更改abc.py,那么一个好方法是让它检查命令行参数,如果不存在,则要求它......如下所示:

if __name__ == '__main__':
    if len(sys.argv) > 1:
        file_to_process = sys.argv[1]
    else:
        file_to_process = raw_input("Enter file to process: ").strip()

关于python - 将命令行参数转换为 Python 中的标准输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7100879/

相关文章:

python - Pandas 识别列表中数据框中存在 False 的行号

python - 由于导入 current_app,Sphinx 无法记录 Flask 项目

python - 从两个单独的 DataFrame 创建 Pandas DataFrame

python - 在Python中解码JSON

linux - 如何在单个文件中运行下面给定的 Linux 命令列表?

validation - Grails inList约束在错误消息中获取inList映射的值

python - 将一对列表/元组解压缩成两个列表/元组

json - awk json 日志文件大于一次

wpf - 基于 TextBox 值 (WPF) 启用按钮

sql-server - VB6 ADO 命令到 SQL Server