0
我收到以下錯誤,它說沒有足夠的參數,我已經傳遞了兩個參數......這裏有什麼問題?當2個指令已經通過時,沒有足夠的參數類型錯誤
check_call("rm -rf %s/%s/*" % SCRIPT_ROOT % W_ROOT,shell=True)
TypeError: not enough arguments for format string
我收到以下錯誤,它說沒有足夠的參數,我已經傳遞了兩個參數......這裏有什麼問題?當2個指令已經通過時,沒有足夠的參數類型錯誤
check_call("rm -rf %s/%s/*" % SCRIPT_ROOT % W_ROOT,shell=True)
TypeError: not enough arguments for format string
你不能這樣做的兩個步驟的格式。你需要使用一個%
運營商,並通過一個元組:
"rm -rf %s/%s/*" % (SCRIPT_ROOT, W_ROOT)
check_call('rm -rf {}/{}/*'.format(SCRIPT_ROOT,W_ROOT),shell=True)
此外,還要確保你知道shell=True
的影響,特別是因爲你似乎在做破壞性操作。
如果有任何一個參數是../../
,會發生什麼情況?