簡體   English   中英

如何將 python 命令行 arguments 保存到日志文件?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM