You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何实现每次调用数组时动态生成随机元素

问题原因

你当前的写法中,random.choice(ARR1) 仅在定义ARR2时执行一次,生成的随机值会直接固化为ARR2的最后一个元素,后续无论多少次访问ARR2都不会重新触发随机选择逻辑,因此三次打印结果完全相同。

实现方案

该需求可以轻松实现,常见实现方式有两种:

方案1:循环内每次重新构建数组

直接将ARR2的定义放到循环内部,每次循环都重新执行随机选择逻辑生成新的数组:

import random

ARR1 = ['A', 'B', 'C', 'D']
for i in range(3):
    # 每次循环都重新生成ARR2
    ARR2 = ['1', '2', '3', random.choice(ARR1)]
    print(ARR2)

方案2:封装为函数调用

如果需要多处使用该动态数组,可以把生成逻辑封装为函数,每次调用函数都会返回新的随机数组:

import random

ARR1 = ['A', 'B', 'C', 'D']

def generate_arr2():
    return ['1', '2', '3', random.choice(ARR1)]

for i in range(3):
    # 每次调用函数都会生成新的数组
    print(generate_arr2())

两种方案都可以达到你预期的输出效果,每次打印的最后一位都会重新随机选择ARR1中的元素。

内容的提问来源于stack exchange,提问作者pc131

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 21:15:02