【问题标题】:Python - How do I append numbers inside the list andPython - 如何在列表中附加数字和
【发布时间】:2017-06-17 16:55:43
【问题描述】:

每当我尝试将输入中的数字附加到列表中时,它都会超出一个括号而不是两个括号内

有没有办法只使用一对括号而不是两个?

我也在尝试添加 1-3 之间的随机数,然后我得到了,

[[2, 1, 3]]

如何创建小数点后十位的随机数

我的代码,

import random
array = []

nums = random.sample(range(1, 4), 3)
array.append(nums)
print(array)

for x in range(2):
    nums = int(input("what are your numbers "))
    array.append(nums)
    print(array)

我明白了,

[[2, 1, 3]]
what are your numbers 3
[[2, 1, 3], 3]
what are your numbers 2
[[2, 1, 3], 3, 2]

Process finished with exit code 0

【问题讨论】:

  • 你的意思是array = random.sample(range(1, 4), 3)
  • 使用array.extend
  • 之前没有人提到extend,这让我印象深刻。谢谢@ruaridhw

标签: python python-3.x random append


【解决方案1】:

你首先让数字成为一个列表nums = random.sample(range(1, 4), 3)。 因此,如果您将 nums 附加到 array。那么 array 将成为包含其他列表而不是整数的列表。

也许你可以简单地尝试array = random.sample(range(1, 4), 3)。它会让array成为一个整数列表,然后附加你需要的其他数字。:D

实际上还有另一种方法可以做你想做的事,只需array += random.sample(range(1, 4), 3)它将random.sample中的内容附加到数组中,而不是作为列表附加。

【讨论】:

    【解决方案2】:

    random.sample() 已经将列表作为返回值返回给您,因此无需将其附加到另一个列表中

    array = random.sample(range(1, 4), 3)
    

    在你的代码中

    import random
    
    array = random.sample(range(1, 4), 3)
    
    print(array)
    
    for x in range(2):
        number = int(input("what are your numbers "))
        array.append(number)
        print(array)
    

    【讨论】:

    • 谢谢,你知道我怎样才能让随机数有十分位吗?
    猜你喜欢
    • 2020-12-06
    • 2022-11-29
    • 1970-01-01
    • 2020-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-06
    • 2011-12-31
    相关资源
    最近更新 更多