Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中获取一个新的随机数_Python_Loops_Random_Itertools - Fatal编程技术网

在python中获取一个新的随机数

在python中获取一个新的随机数,python,loops,random,itertools,Python,Loops,Random,Itertools,也许这是一个新手问题,但我如何能在每次重复时得到一个新的随机数 realport=random.randint(端口开始,端口结束) liste=list(itertools.repeat(“{}:{}:{}:{}.”格式(主机名、realport、用户名、密码)、金额) 正如ShadowRanger评论的那样,itertools.repeat可能不是你想要的 “”可能是表达您想要的更好的方式: def getport(): return random.randint(portstart

也许这是一个新手问题,但我如何能在每次重复时得到一个新的随机数

realport=random.randint(端口开始,端口结束)
liste=list(itertools.repeat(“{}:{}:{}:{}.”格式(主机名、realport、用户名、密码)、金额)

正如ShadowRanger评论的那样,
itertools.repeat
可能不是你想要的

“”可能是表达您想要的更好的方式:

def getport():
    return random.randint(portstarts, portends)

liste = [
  '{}:{}:{}:{}'.format(hostname, getport(), username, password)
  for _ in range(amount)
]
如果您希望所有端口都是唯一的,那么您可以使用
random.sample
来“采样而不替换”:


例如,请参见Python中无需替换的各种采样方法

您所说的“重复”是什么意思?重复是指具有相同值的连续随机数,还是仅指任意两个相等的随机数,而不管它们在序列中的位置如何?目前有两个或更多相等的随机数,但是我需要列表中连续的随机数:)你有什么理由需要
itertools。重复
?因为根据定义,
itertools.repeat
总是返回同一个对象(不是副本,不是新创建的对象,实际上就是您作为第一个参数传递给
repeat
)的同一个对象)。实际上我不需要itertools.repeat,但这是我想到的第一个解决方案,后来我尝试添加random,所以是的,我可能需要一个新的解决方案
liste = [
  '{}:{}:{}:{}'.format(hostname, port, username, password)
  for port in random.sample(range(portstarts, portends+1), amount)
]