AkeyyY 2022-11-23 09:52 采纳率: 100%
浏览 6
已结题

Python for循环相关问题

刚学了几天Python,想上手写一写计算,在写for循环的时候数组里共有28个元素,但在for循环下打印出来的循环变量却只有6。
以下是部分代码(数组已列出,其他变量都是测量量,可以任取)
t_jh = [12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14, -15]
for j in range(len(t_jh)):
    print(j)
    BLh_tjh = HCR * (tah - t_jh[j]) / tah *Qcr_2a
    BLh_tjhs.append(BLh_tjh)
    if t_jh[j] >= 5.5:

        if t_jh[j] >= tdh:

            Phmin_tjh = Phmin_tdh + (Phmin_tah - Phmin_tdh) / (tah - tdh) * (t_jh[j] - tdh)
            Phmin_tjhs.append(Phmin_tjh)
            Qhmin_tjh = Qhmin_n85 + (Qh_min - Qhmin_n85) / (7 - (-8.5)) * (t_jh[j] - (-8.5))
            Qhmin_tjhs.append(Qhmin_tjh)
            XB_tjh = BLh_tjhs[j] / Qhmin_tjhs[j]
            XB_tjhs.append(XB_tjh)
            PLFB_tjh = 1 - HCD * (1 - XB_tjhs[j])
            PLFB_tjhs.append(PLFB_tjh)
            PhB_tjh_1 = XB_tjhs[j] * Phmin_tjhs[j] / PLFB_tjhs[j] * n_jh[j]
            PhB_tjhs_1.append(PhB_tjh_1)

        if tch < t_jh[j] < tdh:
            Phm_tch = Phm_n85 + (Phm - Phm_n85) / (7 - (-8.5)) * (tch - (-8.5))
            Phm_tjh = Phm_tch + (Phmin_tdh - Phm_tch) / (tdh - tch) * (t_jh[j] - tch)
            Phm_tjhs.append(Phm_tjh)
            PhB_tjh_2 = Phm_tjhs[j] * n_jh[j]
            PhB_tjhs_2.append(PhB_tjh_2)

运行结果及报错内容

img

我的解答思路和尝试过的方法

目前完全没有头绪,因为之前也是这么写的但是没有出现过类似的问题。

我想要达到的结果

想要了解为什么在这个循环中循环变量会变成0-5,以及如何得到我想要的数组长度的循环变量,谢谢!

  • 写回答

4条回答 默认 最新

  • qybao 2022-11-23 10:30
    关注
    
    逻辑有问题
        BLh_tjh = HCR * (tah - t_jh[j]) / tah *Qcr_2a
        BLh_tjhs.append(BLh_tjh) //每次循环这里追加元素
        if t_jh[j] >= 5.5:
            if t_jh[j] >= tdh:
                Phmin_tjh = Phmin_tdh + (Phmin_tah - Phmin_tdh) / (tah - tdh) * (t_jh[j] - tdh)
                Phmin_tjhs.append(Phmin_tjh)
                Qhmin_tjh = Qhmin_n85 + (Qh_min - Qhmin_n85) / (7 - (-8.5)) * (t_jh[j] - (-8.5))
                Qhmin_tjhs.append(Qhmin_tjh)//每次满足条件才会追加元素
                XB_tjh = BLh_tjhs[j] / Qhmin_tjhs[j] //这里怎么保证Qhmin_tjhs[j]的j不越界?
                //比如j循环了5次,但是Qhmin_tjhs.append只执行了2次,Qhmin_tjhs[5]不就越界了吗?
                
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 12月2日
  • 已采纳回答 11月24日
  • 创建了问题 11月23日

悬赏问题

  • ¥50 寻找一位有逆向游戏盾sdk 应用程序经验的技术
  • ¥15 请问有用MZmine处理 “Waters SYNAPT G2-Si QTOF质谱仪在MSE模式下采集的非靶向数据” 的分析教程吗
  • ¥50 opencv4nodejs 如何安装
  • ¥15 adb push异常 adb: error: 1409-byte write failed: Invalid argument
  • ¥15 nginx反向代理获取ip,java获取真实ip
  • ¥15 eda:门禁系统设计
  • ¥50 如何使用js去调用vscode-js-debugger的方法去调试网页
  • ¥15 376.1电表主站通信协议下发指令全被否认问题
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥15 复杂网络,变滞后传递熵,FDA