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日

悬赏问题

  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化