我的应用程序有一点问题。这是一个代码: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
提交
取消