Skip to main content
 首页 » 编程设计

python之如何在 1 行中分配具有相同参数的 2 个变量

2025年05月04日12txw1958

作为一个学习练习,我想知道在 python 3.x 中是否有一种方法可以基本做到:

a = random.sample(range(30), random.randrange(1,20)) 
b = random.sample(range(30), random.randrange(1,20)) 

作为:

a, b = random.sample(range(30), random.randrange(1,20)) 

这行不通,据我所知。我也不知道是否可以不写就做到这一点。

a, b = random.sample(range(30), random.randrange(1,20)), random.sample(range(30), random.randrange(1,20)) 

提前感谢您的回复。

请您参考如下方法:

我认为最好的选择可能是列表理解:

a, b = [random.sample(range(30), random.randrange(20)) for _ in range(2)] 

此外,您还可以使用生成器表达式:

a, b = (random.sample(range(30), random.randrange(20)) for _ in range(2)) 

但是,由于这是拆包,我不确定那样会不会更快。