创建逻辑以根据用户输入选择字符串变量?

时间:2017-07-31 04:52:58

标签: python python-3.x python-requests

我正在尝试扩展我正在编写的天气脚本的功能。目前,它旨在根据用户的输入显示JSON输出中的当前天气。

response = requests.get('http://api.openweathermap.org/data/2.5/weather')

weather是生成当前天气数据的正确网址,但我还想生成3天或5天的天气预报,但会根据用户输入。

我一直在使用argparse一点用于用户数据,但我正在考虑这样的事情来决定是否应该在字符串末尾使用weatherforecast

parser.add_argument("-data", help="current weather or 5 day")

但我遇到的麻烦是根据输入决定的逻辑,一个人是决定当前天气还是五天预测,我将如何做到这一点。

我应该在我的函数中使用某种try语句来确定要添加的字符串,或者是什么?

2 个答案:

答案 0 :(得分:0)

我查看了http://openweathermap.org/api,在看到网址后,我不清楚问题是什么。当前天气的网址以weather?q={parameters}结尾,而forcast的网址以forcast?q={parameters}结尾。

在我看来,您正在寻找的是一个可以告诉您要查询哪个URL的选项。

为什么不在argparse --forcast中设置选项,如果该选项由用户设置,则查询forcast网址。假设您默认查询weather网址。

答案 1 :(得分:0)

您应该查看openweathermap.org的文档,了解如何在网址中指定此选项。从那里你必须决定你自己的用户将如何指定选项并编写代码,将程序的输入转换为正确的URL。如果您使用命令行参数,那么您只需解析参数并使用if语句来创建URL。