2014-11-01 81 views
-1

我在Python 3.4.1中遇到了语法错误,我不知道它是干什么的。我试图编写一个程序,将摄氏温度转换为华氏温度,反之亦然。但是,我在打印语句的最后一个引号中出现语法错误。任何人都知道这会造成什么?“print”语句中的Python 3.4.1中的语法错误

def celsiusToFahrenheit(celsius): 
    """Converts celsius into Fahrenheit""" 
    (9/5) * celsius + 32 
def fahrenheitToCelsius(fahrenheit): 
    """Converts fahrenheit into celsius""" 
    (5/9) * (fahrenheit - 32) 

celsius = 40 

print ("40 degrees celsius is", celsiusToFahrenheit(celsius) 
    "in Fahrenheit") 
+4

您可能还需要_return_从你的函数的值。 – 2014-11-01 18:46:08

回答

2

你错过了在函数调用中的逗号的分隔参数:

print ("40 degrees celsius is", celsiusToFahrenheit(celsius), # <= Here 
    "in Fahrenheit") 

P.S.你的下一个问题将是你为什么从celsiusToFahrenheit得不到你想要的。那是因为你没有return值。将每个函数的最后一行分别替换为return (9/5) * celsius + 32return (5/9) * (fahrenheit - 32)

+0

我知道我还没有回报价值,但我正在努力。谢谢你的提示。编辑:它的工作!非常感谢。 – Jackylegssss 2014-11-01 19:17:03

2

您有:

print ("40 degrees celsius is", celsiusToFahrenheit(celsius) 
    "in Fahrenheit") 

添加您的每个项目之间用逗号:

print ("40 degrees celsius is", celsiusToFahrenheit(celsius), 
    "in Fahrenheit") 
0

这是印刷更具可读性和Python的方式:

print ("40 degrees celsius is {0} in Fahrenheit".format(celsiusToFahrenheit(celsius)))