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

Python创建2-20偶数数组并插入30-50可被7整除元素的实现

Python需求实现校验与正确方案

原代码问题排查

原代码存在多处语法、逻辑错误,无法正常运行:

  • 语法错误:两层for循环后没有对应缩进的执行代码块,不符合Python缩进规则
  • 逻辑错误:使用嵌套循环遍历两类数字,会导致重复插入目标值,完全不符合需求逻辑
  • 调用错误:append()是数组/列表对象的方法,不能用遍历得到的单个元素i调用
  • 返回值错误:append()是原地修改方法,没有返回值,赋值给my_ar最终得到的是None
  • 选型问题:如果没有特殊要求,日常开发用Python内置列表即可,不需要额外引入array模块,你使用的array('b')是有符号字符类型,仅适合存储小范围整数,通用性差

正确实现

方案1:使用Python内置列表(最常用)

# 第一步:创建2到20的偶数列表
my_ar = [x for x in range(2, 21, 2)]
# 第二步:遍历30到50的数字,筛选可被7整除的数用append插入
for num in range(30, 51):
    if num % 7 == 0:
        my_ar.append(num)
print(my_ar)

运行输出为:[2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 35, 42, 49]

方案2:必须使用array模块的实现

如果要求必须使用array模块,可参考以下代码:

from array import array
# 用'i'类型表示有符号整数,适用性更强
my_ar = array('i', [x for x in range(2, 21, 2)])
for num in range(30, 51):
    if num % 7 == 0:
        my_ar.append(num)
# 转成列表打印更直观,也可以直接打印array对象
print(list(my_ar))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 21:00:05