如何在一行中写两个变量?

时间:2017-04-07 18:45:05

标签: python python-2.7 python-3.x numpy

我想在文件中写两个变量。我的意思是这是我的代码:

file.write("a = %g\n" %(params[0]))
file.write("b = %g\n" %(params[1]))

我想在我的文件中写的是:

f(x) = ax + b 

其中aparams[0]bparams[1],但我不知道该怎么做?

感谢您的帮助!

4 个答案:

答案 0 :(得分:0)

如果您想要写入文件的f(x) = ax + b分别为ab params[0]params[1],请执行以下操作:< / p>

file.write('f(x) = %gx + %g\n' % (params[0], params[1]))

'f(x) = %gx + %g' % (params[0], params[1])只是字符串格式,您可以将ab放在正确的空格中。

编辑:如果你正在使用Python 3.6,你可以使用f-strings:

a, b = params[0], params[1]
file.write(f'f(x) = {a}x + {b}\n')

答案 1 :(得分:0)

"f(x) = {a}x + {b}".format(a=params[0], b=params[1]) 

是一个干净的解决方案

答案 2 :(得分:0)

抱歉,我不懂Python,但我猜这个

f = open('file', 'w')
x = 0;
a = 0;
b = 0;
result = a*x+b
a = str(a)
b = str(b)
x = str(x)
result = str(result)
f.write("f("+x+")="+result) #this is if you want result to be shown
print("f("+x+")="+result)

#or

f.write("f("+x+")="+a+""+x+"+"+b) #this is if you want actually show f(x)= ax+b
print("f("+x+")="+a+""+x+"+"+b)

我再也不懂Python,但这是我提出的使用:https://repl.it/HARP/1

我希望这会有所帮助

答案 3 :(得分:0)

你的目标是实现就是写下面的等式来写在文件里面。

f(x) = ax + b where a is params[0] and b is params[1]

你应该做的是

file.write('f(x) = %gx + %g' % (param[0], param[1]))

将写

"f(x) = 2x + 3" # if params[0] and params[1] are 2 and 3 resp

你在做什么

file.write("a = %g\n" %(params[0]))
file.write("b = %g\n" %(params[1]))

这将在文件中写为:

a = 2
b = 3

如果params [0]和params [1]分别为2和3