百分号的含义(%)

时间:2014-06-23 18:01:37

标签: python

你能解释一下这个python代码的含义吗?

     for v in m.getVars():
           print('%s %g' % (v.varName, v.x))  

打印输出

     x 3
     y 5

'3'和'5'是'(v.varName,vx)的值'我不知道如何打印'x'和'y'以及'%'的其他用途除了找到剩余部分。

2 个答案:

答案 0 :(得分:1)

命令

for v in m.getVars():

将模型m中的所有Var对象的列表分配给变量v。

然后,您可以查询列表中各个变量的各种属性。

例如,要获取列表v中第一个变量的变量名称和解决方案值,您将发出以下命令

print v.varName, v.x

您可以键入help(v)以获取Var对象

上所有方法的列表

正如其他人所说,%只是占位符 要了解代码的工作原理,请检查模型m

答案 1 :(得分:0)

这是一种在包含许多变量时简化字符串的方法。在python中,如您所见,您在print语句中创建了一个字符串,它反映了变量v.varName和v.x.当在字符串中使用百分号时,它将按顺序与您提供的参数匹配。

每个变量类型都有特定的字母。在你的情况下,你使用" s"和" g"表示字符串和数字。当然,如果要创建字符串(例如本例),数字将变为字符串。

示例:

x = 20
y = "hello"
z = "some guy"

resulting_string = "%s, my name is %s. I am %g years old" % (y, z, x)

print resulting_string

结果将是:

hello, my name is some guy. I am 20 years old

请注意,变量部分中的顺序是正确排序的。