从变量打印时,有没有办法避免打印出数据(如引号,括号,逗号和其他重要的符号)?
int1 = random.randint(1,100)
int2 = random.randint(1,100)
q1 = "What is", int1, "+", int2, "?"
answer = int(raw_input(q1))
上面的代码打印出来:
('What is', 75, '+', 74, '? ')149
打印上述内容的正确方法应该是这样的:
What is 75 + 74? 149
答案 0 :(得分:3)
“正确的方法”是使用str.format
:
q1 = "What is {0} + {1}? ".format(int1, int2)
answer = int(raw_input(q1))
答案 1 :(得分:2)
我认为最清晰的语法是将常量字符串与变量分开的语法:
print "What is %d + %d?" % (int1, int2)
答案 2 :(得分:0)
简单:
q1 = "What is" + str(int1) + "+" + str(int2) + "?"
或
' '.join([str(x) for x in q1])