![](/img/trans.png)
[英]How to send in command line arguments for a python file execution in command line?
[英]How to save python command line arguments to a log file?
我有一個 python 腳本test.py
,它有幾十個參數/標志: --flag1
, --flag2
,..., --flagn
。 為了運行它,我執行如下命令
python test.py --flag1 value1 --flag3 value3 --flag8 value8
在這種情況下,我想將完全相同的輸入行保存到日志文件中。 在上面的例子中,我想要一個log.txt
只包含一行:
python test.py --flag1 value1 --flag3 value3 --flag8 value8
因為這個腳本有幾十個標志,其中一些默認為一些值,我只關心用戶的輸入是什么,我不需要用戶沒有直接指定的其他 arguments 的默認值的任何信息.
如何創建這樣的日志文件,其中包含用戶鍵入的完全相同的行?
您可以使用sys.argv
捕獲傳遞給腳本的所有 arguments:
命令行 arguments 列表傳遞給 Python 腳本。
例如:
import sys
print(sys.argv)
print(" ".join(sys.argv))
當您將一些 arguments 傳遞給此腳本時,例如:
my_script.py --foo --bar
它會打印
['my_script.py', '--foo', '--bar']
my_script.py --foo --bar
如果你也想包含 Python 可執行文件,你可以使用sys.executable
:
>>> print(sys.executable)
/usr/bin/python
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.