2014-11-01 80 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)))