【问题标题】:how to have three different lists print on one line如何在一行上打印三个不同的列表
【发布时间】:2016-03-10 10:12:50
【问题描述】:

我想在一行上打印三个不同的列表,随机选择。我该怎么做? 到目前为止,这是我的代码:

numbers = list(range(1, 50)) 
operators = ["+", "-", "x"] 
numbers1 = list(range(1,10)) 
print(random.choice(numbers))   
print(random.choice(operators)) 
print(random.choice(numbers1)) 

【问题讨论】:

  • 如何让这个问题成为用户需要输入答案的问题?

标签: python list random


【解决方案1】:
import random    

numbers = list(range(1, 50)) 
operators = ["+", "-", "x"] 
numbers1 = list(range(1,10))

print(str(random.choice(numbers)) + random.choice(operators) + str(random.choice(numbers1)))

先将数字转换为字符串。

【讨论】:

    【解决方案2】:

    您可以用逗号分隔print 的参数以打印tuple,或者您可以使用格式字符串将随机选项打印为字符串的一部分:

    import random
    
    numbers = list(range(1, 50))
    operators = ["+", "-", "x"]
    numbers1 = list(range(1,10))
    print(random.choice(numbers), random.choice(operators), random.choice(numbers1))
    print('{} {} {}'.format(random.choice(numbers), random.choice(operators), random.choice(numbers)))
    

    样本输出

    (18, 'x', 1)
    10 + 30
    

    【讨论】:

      【解决方案3】:

      单行输出:

      print "number: {0} operator: {1} number1: {2}".format(random.choice(numbers), random.choice(operators), random.choice(numbers1)) 
      

      【讨论】:

        【解决方案4】:

        您也可以尝试将所需的所有内容按您想要的顺序添加到一个变量中,然后打印该变量。

        【讨论】:

          【解决方案5】:

          简而言之:

          print map(random.choice, (numbers, operators, numbers1))
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-09-07
            • 1970-01-01
            • 1970-01-01
            • 2012-08-24
            • 1970-01-01
            相关资源
            最近更新 更多