Skip to main content
 首页 » 编程设计

python之从元组+一些数字中选择一个随机数

2025年05月04日20duanxz

我有一个数字元组,除了某个数字之外,我还想从我的元组中选择一个随机数。例如:

my_tuple = (1,2,3) 

我有数字 4。我想从数字 1、2、3、4 中选择一个随机数(当然不改变元组)。

我试过:

my_tp = (1, 2, 3) 
a = random.choice(list(my_tp).append(4)) 
print(a) 

我是 python 的新手。我尝试将元组转换为列表,然后执行随机函数。 上面的代码不起作用。得到错误

object of type 'NoneType' has no len()

希望得到一些帮助。

请您参考如下方法:

list.append返回 none

一旦转换为 list正如您所做的那样,附加将修改 list但返回 none所以这就是你的error的来源.

为了解决这个问题,您可以转换 tuple到 list然后append 4给它,然后使用 random.choice ,或者只需一步,您就可以连接 [4] 的列表与 +操作数。

这种方法要简单得多:

import random 
 
my_tuple = (1,2,3) 
random.choice(list(my_tuple) + [4]) 

希望这有助于解决一些问题! :)

更新:

如果你想从没有最后一项的元组中随机选择,那么只需 slice具有正常语法的列表:

random.choice(list(my_tuple)[:-1])