我正在使用pyowm
模块创建一个天气应用程序,我设法得到了 xyz 的温度,但事情是它不那么吸引别人,因为它只是原始结果我想让它变得可读下面是代码及其输出。
import pyowm
owm = pyowm.OWM('myapikey')
observation = owm.weather_at_place('London,uk')
w = observation.get_weather()
result=w.get_temperature('celsius')
print (result)
#the output is {'temp_min': 17.0, 'temp': 19.64, 'temp_kf': None, 'temp_max': 21.8}
所以现在我想要的是它应该是可读的,
place:London
temperature:17 degrees
maximum:21.8
minimum:17.0
我知道正则表达式,但我不确定是否可以在此实现它,因为无论我怎么努力都会给我带来错误。
答案 0 :(得分:2)
你不需要正则表达式,正则表达式用于检测字符串中的模式等等。你想要的是用数据构造一个字符串。有许多方法可以实现这一目标,但最简单的可能是
'\n'.join(key + ':' + str(v) for k, v in result.items())
如果要为字典中的值(比如maximum
而不是temp_max
)使用不同的标签而不是给定的键,则必须定义映射{{1的第二个字典密钥到一组新标签,并使用results
或其他一些组合这两种结构的方法。