首页 > 解决方案 > 无效的语法打印 Python

问题描述

def datos_velocidad_turbohelice(incremento):
    velocidadInicial = 181.3566
    aceleraciónInicial = 3 - 0.000062 *(velocidadInicial**2)
    print('Tiempo   '+ 'Velocidad(m/s)   '+ 'Aceleracion(m/s**2) '+'\n')
    print ('0       '+ str(velocidadInicial) + str(aceleraciónInicial))
    tiempo=incremento
    while tiempo <= 130:
     velocidadIncremento= (0.00001(tiempo**3)) - (0.00488(tiempo**2)) + (0.75795(tiempo)) + 181.3566
     aceleracionIncremento= 3 - (0.000062 *(velocidadIncremento**2)
     print (str(tiempo)+str(velocidadIncremento)+str(aceleracionIncremento))
     tiempo+= incremento
datos_velocidad_turbohelice(20)

我的问题是错误在哪里?它说 print (str(tiempo)+str(velocidadIncremento)+str(aceleracionIncremento))
^
SyntaxError: invalid syntax

标签: python-3.x

解决方案


您在这里有一些错误。

一方面,您最初描述的影响这一行的 SyntaxError(str(tiempo)+str(velocidadIncremento)+str(aceleracionIncremento))实际上并不涉及这一行,而是它上面的行,aceleracionIncremento= 3 - (0.000062 *(velocidadIncremento**2); 你在最后缺少一个右括号。

修复此错误后,您将遇到另一个错误(TypeError),指出 ,'float' object is not callable您需要velocidadIncremento=(0.00001*(tiempo**3)) - (0.00488*(tiempo**2)) + (0.75795*(tiempo)) + 181.3566通过添加*运算符来解决该行来解决此错误以乘以0.75795by tiempo。这应该修复代码。

完整修复如下。

#!/usr/bin/env python3

def datos_velocidad_turbohelice(incremento):
    velocidadInicial = 181.3566
    aceleracionInicial = 3 - 0.000062 *(velocidadInicial**2)
    print('Tiempo   '+ 'Velocidad(m/s)   '+ 'Aceleracion(m/s**2) '+'\n')
    print('0       '+ str(velocidadInicial) + str(aceleracionInicial))
    tiempo=incremento
    while tiempo <= 130:
     velocidadIncremento=(0.00001*(tiempo**3)) - (0.00488*(tiempo**2)) + (0.75795*(tiempo)) + 181.3566
     aceleracionIncremento= 3 - (0.000062 *(velocidadIncremento**2))
     print(str(tiempo)+str(velocidadIncremento)+str(aceleracionIncremento))
     tiempo+= incremento
datos_velocidad_turbohelice(20)

输出

Tiempo   Velocidad(m/s)   Aceleracion(m/s**2)

0       181.35660.960806585459
20194.64360.6510598767
40204.50660.406977134499
60211.42560.228551371208
80215.88060.110525125706
100218.35160.0439998842013
120219.31860.0177598050305

推荐阅读