当脚本使用是这样的时候,Python optparse非常有用
%prog [options] [args]
Run Code Online (Sandbox Code Playgroud)
但我需要为脚本编写1个必需参数的帮助,所以用法就是这样的
%prog action [options] [args]
Run Code Online (Sandbox Code Playgroud)
使用Subversion时可以看到类似的东西 - 它的用法字符串是
svn <subcommand> [options] [args]
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:是否有可能以Subversion的方式为optparse准备所需的参数帮助?结果我希望看到这样的帮助:
Usage: python myscript.py action [options] [args]
Available actions:
foo
bar
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-v, --verbose Verbose mode. Output debug log to stdout.
Run Code Online (Sandbox Code Playgroud) 可能重复:
Python中的命令行参数
例:
itp.threads[0].memload(r"c:\FistForSOCAD_PASS.bin","0x108000P")
itp.threads[0].cv.cip = "0x108000"
itp.go()
itp.halt()
Run Code Online (Sandbox Code Playgroud)
我想将上面的例子作为python脚本,并且"FistForSOCAD_PASS.bin"可以用参数替换.因为它只是可变的东西.
运行脚本的示例命令如下:
python itp.py FistForSOCAD_PASS.bin
我试图将一个特定的目录传递给python脚本,然后在脚本中使用该目录.目录可以位于任何地方.例如,脚本应该在命令行上运行
script.py directory_name
Run Code Online (Sandbox Code Playgroud)
到目前为止,我看起来却没有这样.
我需要编写一个命令行应用程序,就像一个shell.所以它将包括命令等.事情是我不知道如何将参数传递给模块中的函数.例如:
用户写道:function1 folder1程序现在应该将'folder1'参数传递给function1函数,然后运行它.但它也必须支持具有不同参数的其他函数ex:
用户输入:function2 folder2 --exampleparam
如何使这个工作?我的意思是,我可以编写一个模块,在python中导入它并只使用python控制台,但事实并非如此.我需要一个接受命令输入并运行它的脚本.
我试图使用eval(),但这并没有解决params的问题.或许它确实如此,但我没有看到它?
我有python代码,询问用户输入.(例如src = input('输入src的路径:').所以当我通过命令提示符运行代码(例如python test.py)时会出现'输入src:'的路径.但是我想在一行中键入所有内容(例如python test.py c:\ users\desktop\test.py).我应该做些什么改变?提前谢谢
我有一个工作代码可以从 csv 列中打印随机行。
#!/usr/bin/python
import csv
import random
**col**=2
with open('<filename>','r') as f:
reader=csv.reader(f)
data=[row[col] for row in reader]
from random import shuffle
shuffle(data)
print '\n'.join(data[:**100**])
f.close();
Run Code Online (Sandbox Code Playgroud)
我想参数化这个脚本。通过传递,位置(列)和样本(例如 100 个值)
我找不到一个像样的教程来解释这一点。有什么想法吗 ?
首先,毕竟我是 Python 的新手。我正在尝试使用以下两种方法创建一个Python文件:
def hello():
print("Hello.")
def bye():
print("Bye bye.")
Run Code Online (Sandbox Code Playgroud)
我知道一个仅适用于一种方法的选项。
if __name__ == "__main__":
hello()
Run Code Online (Sandbox Code Playgroud)
这将允许使用以下命令从 CMD 打开文件:
>python file.py
Run Code Online (Sandbox Code Playgroud)
同样,它将打开文件,但部署 hello(),我需要一些东西来让用户选择 hello() 或 bye() 方法。在互联网上我看到以下CMD命令
>python file.py hello()
>python file.py bye()
Run Code Online (Sandbox Code Playgroud)
不知何故有效,但我不知道如何,有人知道吗?
问候!