使用write函数将4个参数写入文件

时间:2011-10-22 19:03:35

标签: python

我想将此内容写入文件f.write("add unit at-wc 0 0 0 %s" % x ,y, z, "0.000 0.000 0.000 ")但是当我这样做时,我收到错误function takes exactly 1 argument (4 given).

2 个答案:

答案 0 :(得分:5)

您错误地使用了%运算符。你可能正在寻找这样的东西:

f.write("add unit at-wc 0 0 0 %s %s %s 0.000 0.000 0.000 " % (x, y, z))

请注意,替换变量x, y, z都在括号中,这意味着它们是传递给%运算符的单个元组

在您的代码中,请注意您如何将四个参数添加到write()函数中(我将每个参数放在一个单独的行中以便于查看):

f.write(
    "add unit at-wc 0 0 0 %s" % x,
    y,
    z,
    "0.000 0.000 0.000 "
)

答案 1 :(得分:1)

%的优先级高于,

f.write("add unit at-wc 0 0 0 %s" % (x, y, z, "0.000 0.000 0.000 "))

但是现在你会得到一个不同的错误,因为你有比占位符更多的值。