问题描述
尝试使用 pyowm 编写基本的天气程序。
import pyowm
owm = pyowm.OWM('MY_API_KEY')
mgr = owm.weather_manager()
observation = mgr.weather_at_place('Birmingham,uk')
w = observation.weather
temperature = w.temperature('celsius')
print(temperature)
我希望这能以一种简单的方式输出,但可惜,没有运气。这是当前的输出
{'temp': 3.75,'temp_max': 4.44,'temp_min': 2.0,'feels_like': 0.22,'temp_kf': None}
有没有什么简单的方法可以从这些数据中构建一个字符串?就像是
Temp = 3.75
Feels_Like = 0.22
解决方法
您可以使用 fstring
从给定的输出中生成所需的字符串:
temperature = {'temp': 3.75,'temp_max': 4.44,'temp_min': 2.0,'feels_like': 0.22,'temp_kf': None}
str1 = f"Temp = {temperature['temp']}"
str2 = f"Feels_Like = {temperature['feels_like']}"
print(str1,str2)
输出:Temp = 3.75 Feels_Like = 0.22
如果你只需要 print
作为给定的输出字符串,你可以在一行中完成:
print(f"Temp = {temperature['temp']} Feels_Like = {temperature['feels_like']}")
,
您的输出是字典类型。您可以根据这些值构建一个格式化的字符串:
temperature={'temp': 3.75,'temp_kf': None}
outputString="Temp = {0} Feels_Like = {1}".format(temperature["temp"],temperature["feels_like"])
print(outputString)
输出:
'Temp = 3.75 Feels_Like = 0.22'