我的應用程序有一點問題。這是一個代碼:parameters_tuple = (case_name, x_rw[6], x_rw[0], x_rw[1], x_rw[2], x_rw[3], x_rw[6])return """ <testcase classname="performance_tests" name="%s" time="%s"> <Type>%s</Type> <Name>%s</Name> <Request_Count>%s</Request_Count> <Failure_Count>%s</Failure_Count> <Min_Response_Time>%s</Min_Response_Time> </testcase>""" % parameters_tuple我想除以x_rw[6]1000。我嘗試這樣做:parameters_tuple = (case_name, x_rw[6], x_rw[0], x_rw[1], x_rw[2], x_rw[3], x_rw[6])return """ <testcase classname="performance_tests" name="%s" time="%s"> <Type>%s</Type> <Name>%s</Name> <Request_Count>%s</Request_Count> <Failure_Count>%s</Failure_Count> <Min_Response_Time>%s</Min_Response_Time> </testcase>""" % parameters_tuple[0], parameters_tuple[1]/1000, parameteres_tuple[2:]但根本不起作用。如何使其發揮作用?
3 回答

慕尼黑的夜晚無繁華
TA貢獻1864條經驗 獲得超6個贊
您嘗試過使用 f 字符串嗎?這適用于 Python >= 3.6
您可以將代碼替換為:
f'<testcase classname="performance_tests" name="{parameters_tuple[0]}" time="%s">'
在這里,您獲取內部變量和操作的值(就像您的除法一樣),并用它們替換字符串的該部分。
f'<Type>"{parameters_tuple[1]/1000}"</Type>'

一只斗牛犬
TA貢獻1784條經驗 獲得超2個贊
parameters_tuple = (case_name, x_rw[6] / 1000, x_rw[0], x_rw[1], x_rw[2], x_rw[3], x_rw[6])
和
字符串有幫助。
多謝你們 :)

溫溫醬
TA貢獻1752條經驗 獲得超4個贊
您的代碼的問題是它的解釋如下(請注意(...)
):
return ("""...""" % parameters_tuple[0]), parameters_tuple[1]/1000, parameters_tuple[2:]
因此,您會得到“格式字符串參數不足”,因為它在需要 7 時嘗試僅使用第一個參數。相反,您可以使用它(...)
來創建一個包含所有要使用的參數的新元組。用于*
解壓“其余部分”:
return """...""" % (parameters_tuple[0], parameters_tuple[1]/1000, *parameters_tuple[2:])
/ 1000
然而,在定義時執行以下操作似乎要簡單得多parameters_tuple
:
parameters_tuple = (case_name, x_rw[6] / 1000, x_rw[0], x_rw[1], x_rw[2], x_rw[3], x_rw[6])
添加回答
舉報
0/150
提交
取消