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

Python使用for循环遍历列表实现英寸转厘米的问题求解

问题原因

你在for循环中已经遍历拿到了列表的每个元素i,但调用单位转换函数时依然用固定下标从原列表取值,才会出现重复输出相同结果的问题;另外numbers[0,1,2]属于非法的列表索引写法,运行会直接报错。

修复后代码(简洁写法)

直接使用每次迭代拿到的单个元素做转换即可:

def tomtoCm(add):
    assert add > 0
    return add * 2.54

numbers = [4, 1, 20]

def numbersToCm(numbers):
    for i in numbers:
        convert = tomtoCm(i)
        print(convert)

numbersToCm(numbers)

运行后输出结果为:

10.16
2.54
50.8

下标索引写法(适配你尝试len、range的场景)

如果需要通过下标操作列表,正确写法如下,效果和上面的代码完全一致:

def tomtoCm(add):
    assert add > 0
    return add * 2.54

numbers = [4, 1, 20]

def numbersToCm(numbers):
    # 生成和列表长度匹配的下标序列
    for idx in range(len(numbers)):
        convert = tomtoCm(numbers[idx])
        print(convert)

numbersToCm(numbers)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 02:15:03