怎么一次取出4个随机数在一个字符串中

img


第3小题,一次取出4个随机数

要4个字符不重复是

import random
s = 'abcdefghij'
print(random.sample(s,4))

要4个字符可以重复是

import random
s = 'abcdefghij'
print([random.choice(s) for i in range(4)])

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

看了一下你的思路,将他转换列表也是可以的,但是对于python,字符串本身是可读的,我们只需要4个字符串的下标就可以了
demo如下

import random

s = "123456789"

outs = ""
for i in range(4):
    # random能取到最后一个,所以需要长度-1
    index = random.randint(0,len(s) - 1)
    outs += s[index]
print(outs)

img

img

random生成随机数,循环取四次。


import random
s='abcdefghij'
res = ''
for i in range(4):
    res+=random.choice(s)
print(res)

获取字符串长度
随机数在0到长度-1中取4个
输出str[i]
这里的str是字符串 i是随机数

numpy可以设置依次随机取多少个数,循环取对应的字符就好!


import numpy as np
stra = 'abcdefghij'
print([stra[i] for i in np.random.randint(len(stra),size=4)])