我使用pyowm模块从OpenWeatherMap中截取天气数据。它工作正常,但是当我请求天气时,它会以这种格式输出它
<pyowm.webapi25.weather.Weather - reference time=2015-10-28 18:01:16+00, status=rain>
例如,有没有可以抓住“雨&#34;或&#34;多云&#34;通过在&#34; =&#34;之间分配字母;并将标签(&gt;)关闭到一个新变量,然后打印这个新变量?
答案 0 :(得分:1)
您无需解析字符串以获取所需的数据。您目前拥有的是pyowm.webapi25.weather.Weather
类型的对象。你可以像这样访问它的字段:
print weather_obj.get_reference_time()
print weather_obj.get_status()
(其中weather_obj
是对象的名称。)
documentation了解更多信息。
答案 1 :(得分:0)
import re
x="<pyowm.webapi25.weather.Weather - reference time=2015-10-28 18:01:16+00, status=rain>"
print re.findall(r"(?<==)[^=]*(?=>)",x)
您可以将re
与lookbehind
一起使用。
答案 2 :(得分:0)
您可以找到最后一次出现的索引“=”和“&gt;”致电:
lastEqualIndex = weatherString.rfind("=")
lastLTIndex = weatherString.rfind(">")
然后你想要的只是:
weather = weatherString[lastEqualIndex + 1, lastLTIndex]