[英]Command-line input
我需要編寫一個完整的程序來獲取三段數據,然后對其進行處理。 這三項信息是布爾值,字符串和整數。 程序的邏輯是這樣的:如果布爾值是True,則將字符串輸出兩次,一次用雙引號引起來,一次不使用雙引號-否則將輸出兩次。 我可以做的很好,但是然后我必須編寫相同的程序,但是這次使用命令行輸入,到目前為止,下面的程序是我所擁有的,但是我一直遇到找不到命令的錯誤。我覺得我的“ for我在范圍內”是錯誤
import sys
def main():
x = sys.argv[0].lower() == 'true'
y = str(sys.argv[1])
z = int(sys.argv[2])
for i in range(0,len(sys.argv),1):
print(" ",i,":",sys.argv[i])
return 0;
當文件不在$ PATH中或從未使文件可執行時,shell響應為“找不到命令”。 首先確保它可以通過以下方式執行
chmod +x myfile.py
第二,確保它在您的路徑中
which myfile.py
如果它不在您的路徑中,則需要使用顯式路徑(例如“ ./myfile.py”)執行它
如果它不是可執行文件,並且您沒有將其更改為可執行文件,則需要使用
python [full path or .]/myfile.py
在您的評論中,您說您用“ python3”執行了它,請再次檢查它是否對您的系統是正確的。
我差點忘了補充說,腳本中的第一行需要
#!/usr/bin/python
或系統中的任何python指向
def main():
x = sys.argv[1].lower() == 'true'
y = str(sys.argv[2])
z = int(sys.argv[3])
if x:
print "'{}'".format(y)
print '"{}"'.format(y)
else:
print 2*z
return 0;
if __name__ == '__main__':
main()
將此另存為myfile.py
然后從外殼運行: chmod +x myfile.py && python myfile.py
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.