我必须写一个字符串如下:
A = 55
B = 45
res = 'A =' + str(A) + '\n' + \
'B = ' + str(B)
A和B必须分成两行。
print res
结果是正确的。但是,如果我有其他变量,如C,D,E等,在我的代码中逐个执行是很困难的。什么是更简单,更简单的方法?
答案 0 :(得分:2)
您可以创建值的字典并迭代它:
values = {
'A': 56,
'B': 32,
'C': 34
}
res = ''
for key in values:
res += key + ' = ' + str(values[key]) + '\n'
如果你想按顺序排列这些值,你应该使用OrderedDict,如Peter Woods的回答所示。
答案 1 :(得分:1)
您可以使用str.format
更轻松地确定res
:
res = 'A ={}\nB = {}'.format(A, B)
{}
将替换为您传递给format
的参数,您可以根据需要传入。{/ p>
答案 2 :(得分:1)
如果您要处理所有变量(例如您正在使用),可以使用locals
def f():
A = 55
B = 45
C = 35
D = 25
print("\n".join("{} = {}".format(k, v) for k,v in locals().items()))
行动中:
>>> f()
A = 55
B = 45
C = 35
D = 25
否则我们必须知道您要处理哪些变量 - 例如,使用OrderedDict
:
d = OrderedDict([
("A", 55),
("B", 45),
("C", 35),
("D", 25),
])
print("\n".join("{} = {}".format(k, v) for k,v in d.items()))
答案 3 :(得分:0)
首先,不要从大写开始变量名。如果要打印所有值,您应该拥有更多有用的数据结构。喜欢列表或字典。
jQuery('#datetimepicker4').datetimepicker({
format:'d.m.Y H:i'
});
如果您想要排序输出,请先创建一个字符串列表:
>>> dictionary = {'a':55, 'b':45, 'c':65}
>>> for key, value in dictionary.items():
... print str(key) + ' = ' + str(value)
...
a = 55
c = 65
b = 45