(Python)生成数字然后在一行上打印它们

时间:2016-09-12 11:12:08

标签: python random numbers sum

我的作业要求我打印10个随机总和,然后让用户输入他们的答案。我知道如何随机生成数字,但是我需要打印出整个数字而不给出答案,但是我使用的字符串会自动添加它们。

这是我的代码:

for i in range(10):
        number1 = (random.randint(0,20))
        number2 = (random.randint(0,20))
        print (number1 + number2)
    answer = input("Enter your answer: ")

如果有人可以帮助我,我会很感激,我相信这一行

    print (number1 + number2)

是问题,因为当我只想要总和中打印的随机数时,它会添加它们。

提前致谢,

弗林。

4 个答案:

答案 0 :(得分:1)

要将数字转换为字符串以进行连接,请使用str()

print str(number1) + ", " + str(number2)

或使用自然分隔符

print number1, number2

,告诉python一个接一个地输出空格。str()在这种情况下并不是必需的。)

答案 1 :(得分:1)

试试这个,

print number1, '+', number2   

答案 2 :(得分:1)

您的以下行首先计算两个数字的总和,然后将其打印

print(str(number1) + " + " + str(number2))

你必须打印一个字符串:

print("{} + {}".format(number1, number2))

或者更喜欢格式化功能而不是连接:

print("%s + %s" % (number1, number2))

或:

{{1}}

最后,您可能想要阅读一些文档:

答案 3 :(得分:0)

这应该做的工作:

from random import randint

for i in range(10):
  num1 = randint(0,20)
  num2 = randint(0,20)
  answer = input('Sum of %i + %i?: ' % (num1,num2)

也许你知道如何处理其余的事情? (例如处理答案部分)