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

求助:Python代码出现IndexError: list assignment index out of range错误

解决IndexError: list assignment index out of range错误

错误核心原因

Tr、Pr、k都是空列表,Python中空列表不存在任何索引位置,直接用Tr[i] = ...这类索引赋值方式会触发索引越界错误,必须用append()方法向列表中添加元素。

其他潜在问题及修复

  1. 循环范围错误:原代码range(0,1)只执行一次循环,但Tc、Pc、w都包含2个元素,应改为range(2)遍历所有组分。
  2. Pr计算错误:原代码P / Pc中Pc是列表,需取对应索引的元素Pc[i]。
  3. 缺少模块导入:使用math.exp()但未导入math模块,会触发NameError。

修复后的完整代码

import math

z = [0.5, 0.4]
P = 500  # pisa
T = 400  # Ranking
Tc = [343.01, 549.58]
Pc = [667.03, 706.62]
w = [0.011, 0.099]
kij = [[0, -0.0026], [-0.0026, 0]]

Tr = []
Pr = []
k = []
for i in range(2):
    tr_val = T / Tc[i]
    Tr.append(tr_val)
    pr_val = P / Pc[i]
    Pr.append(pr_val)
    k_val = math.exp(5.37 * (1 + w[i]) * (1 - (1 / tr_val))) / pr_val
    k.append(k_val)
    print(k)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 14:30:53