作爲一個大型的Python程序,我有以下代碼的一部分:混亂蟒蛇問題
for arg in sys.argv:
if "name=" in arg:
name = arg[5:]
print(name)
elif "uname=" in arg:
uname = arg[6:]
print(uname)
elif "password=" in arg:
password = arg[9:]
print(password)
elif "bday=" in arg:
bday = arg[5:]
print(bday)
else:
pass
程序期望的是這樣的:
python prog.py "name=Kevin" "uname=kevin" "password=something" "bday=01/01/01"
當我嘗試後,使用「UNAME」程序失敗,聲稱「uname未定義」 我添加了「print()」行來嘗試和調試,並且「print(uname)」始終顯示「= kevin」,無論我放在哪裏的索引號(這裏是「6 :「)。其他陳述似乎工作正常。這是Python中的錯誤嗎?我很困擾。
在此先感謝。
「這是Python中的錯誤嗎?」這個機率幾乎爲零。 – 2010-08-23 15:50:26
正在使用'getopt','optparse'或'argparse'模塊之一嗎? – cji 2010-08-23 15:52:27
Python附帶電池:http://docs.python.org/library/optparse.html#module-optparse(適用於Python2.6或更早版本)或http://docs.python.org/library/argparse.html #module-argparse(對於Python2.7或更高版本,或者如果你自己安裝它)。 – unutbu 2010-08-23 15:55:03