首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python从NOAA返回值

Python从NOAA返回值
EN

Stack Overflow用户
提问于 2020-01-05 16:53:46
回答 1查看 124关注 0票数 0

背景:我正在使用一个Python项目,在这个项目中,我能够在网上找到来自NOAA气象站的值通过API返回并使用Print函数显示,我已经成功地将这些值打印给Python编辑器,但我的最终目标是将这些值填充到MySQL数据库中。这是我的第一次Python体验,我发现最好直接进入一个项目,而不是花几个小时看视频和阅读。

下面是我将要引用的代码:

代码语言:javascript
复制
from noaa_sdk import noaa
from datetime import date

tdate_ = date.today()

n = noaa.NOAA()
observations = n.get_observations('27858','US',start='2020-01-04',end='2020-01-04')
for observation in observations:
    print(observation)

当前,有一个仅允许输入字符串的日期参数。您将看到,我有datetime和tdate_来输入相对日期,但是在将其插入到下面的字符串值时遇到了问题:

代码语言:javascript
复制
observations = n.get_observations('27858','US',start='2020-01-04',end='2020-01-04')

理想情况下,这将在所有情况下引用今天的日期,这就是使用tdate_的目的。

我在网上发现了很多类似的情况,但我觉得总有一些不符合这种情况的警告。我真的很感激你的帮助,并期待着学习更多的Python!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-06 00:04:03

你的问题不清楚。我想您是在问:如何使用tdate字符串表达式而不是常量表达式'2020-01-04'

首先,尾下划线很奇怪,请不要这样做。我们可能分配给一个标识符,如dir_map_list_,因为我们不希望隐藏(隐藏;掩码;重写)内置标识符。或者在这里,我们可以分配给date_,以避免隐藏import编辑的datetime.date模块。好吧,说得够多了,我们要做的是:

代码语言:javascript
复制
tdate = date.today()

现在,你的问题似乎是由这样一个事实引起的:

代码语言:javascript
复制
... n.get_observations(..., start=tdate, ...)

因为start参数应该是一个str,所以是一个字符串。当然可以。这很容易通过函数调用进行补救:

代码语言:javascript
复制
... n.get_observations(..., start=str(tdate), ...)

同样,您可以在幕后执行__str__函数所做的工作:

代码语言:javascript
复制
... n.get_observations(..., start=tdate.strftime('%Y-%m-%d'), ...)

无论是哪种情况,你都会得到一个不错的ISO8601约会。对end参数也执行相同的操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59602105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档