python中的随机、字符串和整数

python中的随机、字符串和整数,python,string,random,Python,String,Random,编写python程序,100次生成3个介于1和10之间的随机数。程序应在新行上显示每组3个数字,并用逗号分隔。示例输出的格式应如下所示: Number set 1 is: 10,7,8 Number set 2 is: 4,6,5 ... Number set 100 is: 7,3,1 我需要帮助正确显示它。 3个随机数100次 问题是: 这些代码行在您的循环之外。这意味着在每次运行代码时,数字不会是唯一的,并且在循环的所有迭代中都会保持不变 mylist=[random.rand

编写python程序,100次生成3个介于1和10之间的随机数。程序应在新行上显示每组3个数字,并用逗号分隔。示例输出的格式应如下所示:

Number set 1 is: 10,7,8   
Number set 2 is: 4,6,5
...  
Number set 100 is: 7,3,1
我需要帮助正确显示它。 3个随机数100次

问题是: 这些代码行在您的循环之外。这意味着在每次运行代码时,数字不会是唯一的,并且在循环的所有迭代中都会保持不变

mylist=[random.randint1,11表示范围为100的r] x=随机。样本列表,3 解决方案: 您可以将代码中前面提到的行移动到循环内部而不是外部:

随机输入 对于我在100范围内: mylist=[random.randint1,11表示范围为100的r] x=随机。样本列表,3 打印'Number set',i+1',is',x 或者您可以编写一个更干净的解决方案:

随机输入 对于1101范围内的i: printfNumber集{i}是:{random.randint1,11},{random.randint1,11},{random.randint1,11} 此解决方案不使用列表,而是将3个不同的随机数打印100次格式化字符串。这将循环100次以上

你也可以看看其他的答案选择

random.choices和random.sample也是不错的选择

了解更多关于它们的信息

问题: 这些代码行在您的循环之外。这意味着在每次运行代码时,数字不会是唯一的,并且在循环的所有迭代中都会保持不变

mylist=[random.randint1,11表示范围为100的r] x=随机。样本列表,3 解决方案: 您可以将代码中前面提到的行移动到循环内部而不是外部:

随机输入 对于我在100范围内: mylist=[random.randint1,11表示范围为100的r] x=随机。样本列表,3 打印'Number set',i+1',is',x 或者您可以编写一个更干净的解决方案:

随机输入 对于1101范围内的i: printfNumber集{i}是:{random.randint1,11},{random.randint1,11},{random.randint1,11} 此解决方案不使用列表,而是将3个不同的随机数打印100次格式化字符串。这将循环100次以上

你也可以看看其他的答案选择

random.choices和random.sample也是不错的选择


阅读更多关于他们的信息

更简短的回答是:

import random
for x in range(100):
  print('Number set', x , 'is', random.sample(range(1, 11), 3))

更简短的回答是:

import random
for x in range(100):
  print('Number set', x , 'is', random.sample(range(1, 11), 3))

若要在数组中使用随机数,应将random.sample放入循环中

输出就像

...
Number set 98 is [4, 3, 1]                                                                                                
Number set 99 is [11, 11, 4]                                                                                              
Number set 100 is [8, 3, 6]

若要在数组中使用随机数,应将random.sample放入循环中

输出就像

...
Number set 98 is [4, 3, 1]                                                                                                
Number set 99 is [11, 11, 4]                                                                                              
Number set 100 is [8, 3, 6]

另一种最简单的方法是随机选择。选择后,请尝试:


另一种最简单的方法是随机选择。选择后,请尝试:

您的x正在打印为列表。您需要做的是将列表转换为字符串,并通过“,”将它们连接起来

您的x正在打印为列表。您需要做的是将列表转换为字符串,并通过“,”将它们连接起来


以下是一个极简主义的答案:

from random import sample

for i in range(100):
    print('Number set {i+1} is:', ','.join(sample([str(n) for n in range(1,11)],3)))
您可以使用此代码动态选择每组中的数字数量:

from random import randint as rd

n = 3 # Choose the amount

for i in range(1,101):
    print(f"Number set {i} is:",','.join(f"{rd(1,11)}" for _ in range(n)))
输出:

Number set 1 is: 8,1,1
Number set 2 is: 9,2,11
Number set 3 is: 4,2,9
Number set 4 is: 6,8,9
Number set 5 is: 8,9,8
Number set 6 is: 11,6,10
Number set 7 is: 10,1,7
Number set 8 is: 4,4,7
Number set 9 is: 9,1,4
Number set 10 is: 1,1,11
Number set 11 is: 6,4,7
Number set 12 is: 9,11,11
Number set 13 is: 11,9,5
Number set 14 is: 6,2,11
Number set 15 is: 7,1,4
Number set 16 is: 11,9,5
Number set 17 is: 9,2,4
Number set 18 is: 5,1,8
Number set 19 is: 5,5,6
Number set 20 is: 5,1,5
Number set 21 is: 1,2,6
Number set 22 is: 8,3,4
Number set 23 is: 3,6,4
Number set 24 is: 5,1,11
Number set 25 is: 7,9,1
Number set 26 is: 10,2,7
Number set 27 is: 9,7,1
Number set 28 is: 11,4,8
Number set 29 is: 10,7,1
Number set 30 is: 2,11,3
Number set 31 is: 3,11,8
Number set 32 is: 2,5,11
Number set 33 is: 9,7,5
Number set 34 is: 9,8,11
Number set 35 is: 1,11,4
Number set 36 is: 8,9,2
Number set 37 is: 6,3,7
Number set 38 is: 8,5,11
Number set 39 is: 7,10,8
Number set 40 is: 10,9,5
Number set 41 is: 9,5,4
Number set 42 is: 10,9,9
Number set 43 is: 1,1,6
Number set 44 is: 10,9,5
Number set 45 is: 7,7,10
Number set 46 is: 9,8,10
Number set 47 is: 9,5,6
Number set 48 is: 7,10,10
Number set 49 is: 6,2,7
Number set 50 is: 9,7,9
Number set 51 is: 11,10,1
Number set 52 is: 2,7,4
Number set 53 is: 11,2,6
Number set 54 is: 2,1,3
Number set 55 is: 9,5,10
Number set 56 is: 6,2,8
Number set 57 is: 1,7,9
Number set 58 is: 8,8,9
Number set 59 is: 5,2,2
Number set 60 is: 8,2,10
Number set 61 is: 4,11,10
Number set 62 is: 8,7,9
Number set 63 is: 3,9,7
Number set 64 is: 8,3,5
Number set 65 is: 10,3,9
Number set 66 is: 9,8,2
Number set 67 is: 7,1,9
Number set 68 is: 10,11,11
Number set 69 is: 1,6,11
Number set 70 is: 2,2,6
Number set 71 is: 10,1,8
Number set 72 is: 6,6,9
Number set 73 is: 7,7,2
Number set 74 is: 4,6,11
Number set 75 is: 4,11,9
Number set 76 is: 8,6,5
Number set 77 is: 11,11,3
Number set 78 is: 2,7,6
Number set 79 is: 11,2,8
Number set 80 is: 4,4,10
Number set 81 is: 5,2,8
Number set 82 is: 9,1,10
Number set 83 is: 10,7,7
Number set 84 is: 11,4,5
Number set 85 is: 7,9,1
Number set 86 is: 6,9,2
Number set 87 is: 2,8,7
Number set 88 is: 6,11,7
Number set 89 is: 6,2,10
Number set 90 is: 8,7,1
Number set 91 is: 3,6,1
Number set 92 is: 10,5,9
Number set 93 is: 3,9,6
Number set 94 is: 7,7,7
Number set 95 is: 11,5,9
Number set 96 is: 10,1,1
Number set 97 is: 11,1,10
Number set 98 is: 7,1,2
Number set 99 is: 5,3,5
Number set 100 is: 1,6,2

以下是一个极简主义的答案:

from random import sample

for i in range(100):
    print('Number set {i+1} is:', ','.join(sample([str(n) for n in range(1,11)],3)))
您可以使用此代码动态选择每组中的数字数量:

from random import randint as rd

n = 3 # Choose the amount

for i in range(1,101):
    print(f"Number set {i} is:",','.join(f"{rd(1,11)}" for _ in range(n)))
输出:

Number set 1 is: 8,1,1
Number set 2 is: 9,2,11
Number set 3 is: 4,2,9
Number set 4 is: 6,8,9
Number set 5 is: 8,9,8
Number set 6 is: 11,6,10
Number set 7 is: 10,1,7
Number set 8 is: 4,4,7
Number set 9 is: 9,1,4
Number set 10 is: 1,1,11
Number set 11 is: 6,4,7
Number set 12 is: 9,11,11
Number set 13 is: 11,9,5
Number set 14 is: 6,2,11
Number set 15 is: 7,1,4
Number set 16 is: 11,9,5
Number set 17 is: 9,2,4
Number set 18 is: 5,1,8
Number set 19 is: 5,5,6
Number set 20 is: 5,1,5
Number set 21 is: 1,2,6
Number set 22 is: 8,3,4
Number set 23 is: 3,6,4
Number set 24 is: 5,1,11
Number set 25 is: 7,9,1
Number set 26 is: 10,2,7
Number set 27 is: 9,7,1
Number set 28 is: 11,4,8
Number set 29 is: 10,7,1
Number set 30 is: 2,11,3
Number set 31 is: 3,11,8
Number set 32 is: 2,5,11
Number set 33 is: 9,7,5
Number set 34 is: 9,8,11
Number set 35 is: 1,11,4
Number set 36 is: 8,9,2
Number set 37 is: 6,3,7
Number set 38 is: 8,5,11
Number set 39 is: 7,10,8
Number set 40 is: 10,9,5
Number set 41 is: 9,5,4
Number set 42 is: 10,9,9
Number set 43 is: 1,1,6
Number set 44 is: 10,9,5
Number set 45 is: 7,7,10
Number set 46 is: 9,8,10
Number set 47 is: 9,5,6
Number set 48 is: 7,10,10
Number set 49 is: 6,2,7
Number set 50 is: 9,7,9
Number set 51 is: 11,10,1
Number set 52 is: 2,7,4
Number set 53 is: 11,2,6
Number set 54 is: 2,1,3
Number set 55 is: 9,5,10
Number set 56 is: 6,2,8
Number set 57 is: 1,7,9
Number set 58 is: 8,8,9
Number set 59 is: 5,2,2
Number set 60 is: 8,2,10
Number set 61 is: 4,11,10
Number set 62 is: 8,7,9
Number set 63 is: 3,9,7
Number set 64 is: 8,3,5
Number set 65 is: 10,3,9
Number set 66 is: 9,8,2
Number set 67 is: 7,1,9
Number set 68 is: 10,11,11
Number set 69 is: 1,6,11
Number set 70 is: 2,2,6
Number set 71 is: 10,1,8
Number set 72 is: 6,6,9
Number set 73 is: 7,7,2
Number set 74 is: 4,6,11
Number set 75 is: 4,11,9
Number set 76 is: 8,6,5
Number set 77 is: 11,11,3
Number set 78 is: 2,7,6
Number set 79 is: 11,2,8
Number set 80 is: 4,4,10
Number set 81 is: 5,2,8
Number set 82 is: 9,1,10
Number set 83 is: 10,7,7
Number set 84 is: 11,4,5
Number set 85 is: 7,9,1
Number set 86 is: 6,9,2
Number set 87 is: 2,8,7
Number set 88 is: 6,11,7
Number set 89 is: 6,2,10
Number set 90 is: 8,7,1
Number set 91 is: 3,6,1
Number set 92 is: 10,5,9
Number set 93 is: 3,9,6
Number set 94 is: 7,7,7
Number set 95 is: 11,5,9
Number set 96 is: 10,1,1
Number set 97 is: 11,1,10
Number set 98 is: 7,1,2
Number set 99 is: 5,3,5
Number set 100 is: 1,6,2

您应该确保为每个迭代生成唯一的随机数。示例代码生成一个随机集,但随后不会在循环本身中更新它。是否希望集不重复?应确保为每个迭代生成唯一的随机数。示例代码生成一个随机集,但不会在循环本身中更新它。是否希望集不重复?