【问题标题】:invalid syntax discrepancy, strange无效的语法差异,奇怪
【发布时间】:2015-07-21 19:43:56
【问题描述】:

我编写了以下代码,其中定义了一些我稍后将使用的函数:

def dy1_dt(t, y1, y2, y3, y5, y6, i):
        S=pi*y5**2
        return -G*m_range[i]/y2**2+(1.0/(2.0*y3)*C_D*rho_range[i]*(y1**2+y2**2*y6**2)*cos(phi)*S


    def dy2_dt(t, y1, i):
        return y1        

    def dy3_dt(t, y1, y2, y5, y6, i):
        S=pi*y5**2
        return -0.5*C_H*rho_range[i]*(y1**2+y2**2*y6**2)**(1.50)*S/Q_abl

    def dy4_dt(t, y1, y2, y5, y6, i):
        return C_D*rho_range[i]/(2*iron_den)*(y1**2+y2**2*y6**2)/y5


    def dy5_dt(t, y1, y2, y3, y5, y6, i):
        S=pi*y5**2
        return -y5/(6.0*y3)*C_H*rho_range[i]*(y1**2+y2**2*y6**2)**(1.50)*S/Q_abl

    def dy6_dt(t, y1, y2, y3, y6, i):
        return -C_D*rho_range[i]/(2*y3*y2)*(y1**2+y2**2*y6**2)*sin(phi)*S-((y1*y6)/y2)

    def dy7_dt(t, y6, i):
        return y6

我在'dy2_dt(t, y1, i)' 行收到一条错误消息,上面写着'无效语法'。我不知道其中实际上包含了哪些无效语法——看起来一切都很好。

【问题讨论】:

    标签: python syntax


    【解决方案1】:

    您的代码确实无效,您忘记关闭括号了。

    如果你扩展你的第一个函数,它会给出:

    def dy1_dt(t, y1, y2, y3, y5, y6, i):
            S=pi*y5**2
            return (
                    -G *
                    m_range[i] /
                    y2 **
                    2 +
                    (
                            1.0 /
                            (2.0 *y3 ) *
                            C_D *
                            rho_range[i] *
                            (
                                    y1 **
                                    2 +
                                    y2 **
                                    2 *
                                    y6 **
                                    2
                            ) *
                            cos(phi) *
                            S
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多