相关疑难解决方法(0)

用户输入和命令行参数

我如何拥有a)可以接受用户输入的Python脚本以及如何使用b)如果从命令行运行,则读入参数?

python input command-line-arguments

504
推荐指数
10
解决办法
111万
查看次数

如何在Python中访问命令行参数?

我使用python来创建我的项目设置设置,但我需要帮助获取命令行参数.

我在终端试了这个:

$python myfile.py var1 var2 var3
Run Code Online (Sandbox Code Playgroud)

在我的Python文件中,我想使用所有输入的变量.

python command-line

328
推荐指数
9
解决办法
29万
查看次数

解析命令行参数的最佳方法是什么?

解析Python命令行参数的最简单,简洁,最灵活的方法或库是什么?

python command-line command-line-arguments

228
推荐指数
10
解决办法
19万
查看次数

sys.argv [1]在脚本中的含义

我现在正在教自己Python,只是想简单地说(参考下面的例子)sys.argv [1]代表什么.它只是要求输入吗?

#!/usr/bin/python3.1

# import modules used here -- sys is a very standard one
import sys

# Gather our code in a main() function
def main():
  print ('Hello there', sys.argv[1])
  # Command line args are in sys.argv[1], sys.argv[2] ..
  # sys.argv[0] is the script name itself and can be ignored

# Standard boilerplate to call the main() function to begin
# the program.
if __name__ == '__main__':
  main()
Run Code Online (Sandbox Code Playgroud)

python

135
推荐指数
6
解决办法
37万
查看次数

Python中的命令行输入

是否可以先运行程序,然后在命令行中等待用户的输入.例如

Run...

Process...

Input from the user(in command line form)...

Process...
Run Code Online (Sandbox Code Playgroud)

python command-line user-input input python-2.7

31
推荐指数
3
解决办法
16万
查看次数

如何在Python中处理命令行参数?

如果我期待001或999之类的东西(让我们将期望限制在001 ... 999范围内),并且很少有其他参数通过,并且想要忽略任何意外,那么处理命令行参数将是一个简单的表达式?

我理解,例如,我需要找出参数之间是否传递"debug",它将是这样的:

if 'debug' in argv[1:]:
  print 'Will be running in debug mode.'
Run Code Online (Sandbox Code Playgroud)

如何确定009或575是否通过?

所有这些都是预期的电话:

python script.py
python script.py 011
python script.py 256 debug
python script.py 391 xls
python script.py 999 debug pdf
Run Code Online (Sandbox Code Playgroud)

在这一点上,我不关心这样的电话:

python script.py 001 002 245 568
python script.py some unexpected argument
python script.py 0001
python script.py 02
Run Code Online (Sandbox Code Playgroud)

......第一个 - 因为有多个"数字"参数; 第二 - 因为...好,意外的论点; 第三和第四 - 因为非3位数的参数.

python command-line command-line-arguments

26
推荐指数
2
解决办法
5万
查看次数

如何使用Python的optparse格式化位置参数帮助?

作为中提到的文档optparse.OptionParser使用的IndentedHelpFormatter输出格式选项的帮助,对此,我发现了一些API文档.

我想在使用文本中显示所需的位置参数的类似格式的帮助文本.是否有适配器或简单的使用模式可用于类似的位置参数格式化?

澄清

优选仅使用stdlib.Optparse确实很棒,除了这个格式细微差别,我觉得我们应该能够修复而不导入整个其他包.:-)

python formatting command-line optparse command-line-arguments

25
推荐指数
2
解决办法
9331
查看次数

sys.argv可以处理可选参数吗?

from sys import argv
script, lira_cbt, [eur_hedge] = argv

if eur_hedge == None:
    #Do x
else:
    #Do y
Run Code Online (Sandbox Code Playgroud)

我希望它能够只使用lira_cbt作为参数(执行x),或者使用lira_cbt和eur_hedge(执行y)运行.可以用sys.argv实现吗?

python

18
推荐指数
2
解决办法
2万
查看次数

实现"[command] [action] [parameter]"样式命令行界面?

实现命令行UI的"最干净"方式是什么,类似于git,例如:

git push origin/master
git remote add origin git://example.com master
Run Code Online (Sandbox Code Playgroud)

理想情况下还允许更灵活的解析,例如,

jump_to_folder app theappname v2
jump_to_folder app theappname source
jump_to_folder app theappname source v2
jump_to_folder app theappname build v1
jump_to_folder app theappname build 1
jump_to_folder app theappname v2 build
Run Code Online (Sandbox Code Playgroud)

jump_to_folder是脚本名称,app是命令,theappname是"固定位置"参数,"构建"和"v2"等是参数(例如,可能的参数是任何数字/任何前缀为av的数字,或者build/source/TMP /配置)

我可以用一系列if/ else/ 手动解析参数elifs,但必须有更优雅的方法来做到这一点?

作为一个完全理论上的例子,我可以描述UI模式..

app:
    fixed: application_name

    optional params:
        arg subsection:
            "build"
            "source"
            "tmp"
            "config"

        arg version:
            integer
            "v" + integer
Run Code Online (Sandbox Code Playgroud)

然后通过上面的模式解析提供的参数,并获取一个字典:

>>> print schema.parse(["app", "theappname", "v1", "source"])
{ …
Run Code Online (Sandbox Code Playgroud)

python user-interface command-line

14
推荐指数
2
解决办法
5735
查看次数

如何通过命令行传递参数以在 Python 中设置环境

我正在使用 python 3.7 和操作系统库。我必须在 STAGE 和 TEST 环境中运行一系列测试。当前代码将环境设置为 STAGE

环境 = os.getenv('ENV', 'STAGE')

但我希望通过命令行传递参数来设置它。任何人?

python operating-system pytest

11
推荐指数
2
解决办法
3万
查看次数