我是python的新手(如果這是一個新問題,也非常抱歉)但我不知道命令行參數是什麼。當調用sys.argv
時,參數究竟是什麼?任何幫助理解這將是一個偉大的服務。什麼是命令行參數?
回答
嘗試運行此程序:
import sys
print(sys.argv)
你應該會看到類似這樣的結果:
% test.py
['/home/unutbu/pybin/test.py']
% test.py foo
['/home/unutbu/pybin/test.py', 'foo']
% test.py foo bar
['/home/unutbu/pybin/test.py', 'foo', 'bar']
% python test.py foo
['test.py', 'foo']
所以,你看sys.argv
是一個列表。第一項是正在運行的腳本的路徑(或文件名),後跟命令行參數。
@unutbu的另一個很好的答案 – Droogans 2011-12-30 17:19:33
給定命令myscript.py arg1 arg2 arg3
,參數爲arg1,arg2和arg3。 sys.argv還會在第一個位置包含腳本名稱(即myscript.py)。
Command line arguments並不特定於python。
命令行參數是你在命令行命令後鍵入字符串,例如:
python --help
這裏--help
對於python
命令的說法,這顯示了有效的命令幫助頁面用於python
命令的行參數。
在Python程序,你可以訪問論點sys.argv
,所以假設你開始一個python腳本是這樣的:
python myscript.py -x -y
當myscript.py
開始,sys.argv[1]
將具有值字符串「-x '和sys.argv[2]
將具有字符串'-y'的值。你對這些參數的處理由你決定,還有一些模塊可以幫助你輕鬆定義命令行參數,例如argparse。
命令行參數是您在腳本名稱後鍵入的參數。例如。如果輸入:python test.py arg1
,則第一個參數是arg1。例如,jhu.edu。
參數通常用作告訴程序在運行時應該做什麼的一種方式。
如果我有一個名爲writefile.py的程序,並且我希望用戶告訴它要寫哪個文件,那麼我將使用python writefile.py targetfile.txt
運行它。我的樣品writefile.py:
import sys
file = open(sys.argv[1], 'w') # sys.argv[0] = 'writefile.py' (unutbu's answer)
file.write('ABCDE')
file.close
運行在此之後,我將有一個名爲targetfile.txt與內容「ABCDE」的文件。如果我用python writefile.py abcde.txt
來運行它,我會在內容爲「ABCDE」的地方使用abcde.txt。
- 1. 什麼是sbt的命令行參數?
- 2. 什麼是命令行參數在C#
- 3. PM2啓動的命令行參數是什麼意思是
- 4. Python中的命令行參數是什麼?
- 5. 命令行參數語法的基本概念是什麼
- 6. bash shell命令行參數-e的含義是什麼?
- 7. Cucumber命令行參數文檔的官方位置是什麼?
- 8. 如何在libmad中運行minimad.c(什麼是命令和參數)?
- 9. 處理命令行參數的設計模式是什麼
- 10. 什麼是推薦的命令行參數語法?
- 11. 命令行參數
- 12. 命令行參數
- 13. 命令行參數
- 14. 命令行參數
- 15. 命令行參數
- 16. 命令行參數
- 17. 命令行參數?
- 18. 命令行參數和命令行參數數組的長度
- 19. 這個命令是什麼意思,什麼函數執行?
- 20. Visual Studio使用什麼命令行參數來運行MsTest?
- 21. 運行命令行參數
- 22. 運行命令行參數
- 23. NPM通過命令行參數命令
- 24. 什麼是命令行編譯器?
- 25. 這是什麼ruby/bash命令執行?
- 26. 是什麼 - 做運行NPM命令時?
- 27. 什麼是命令行開關?
- 28. 什麼是ruby -a命令行開關?
- 29. 命令行中的「@」是什麼意思?
- 30. 運行命令時,$是什麼意思?
我不知道你想問什麼。參數是通過命令行傳遞給程序的東西,例如:'python myfile.py這些是參數'。你問他們存放在哪裏,或者如何,或者什麼? – Dan 2011-12-30 17:09:04
這不是Python的問題。這是適用於所有**編程語言的Linux(或Windows)問題。請爲您的操作系統添加標籤,以便我們可以鏈接到解釋命令行的操作系統文檔。 – 2011-12-30 17:12:52
'argv'通常代表「參數值」。 (還有一個用於參數計數的'argc'。)你如何調用'sys.argv'? – Rudie 2011-12-30 17:16:59