如何使用da.searchcursor

时间:2015-10-19 02:01:55

标签: windows python-2.7 datetime arcpy

我试图从arc.sde数据库中的多个表中排除一些结果,我可以使用的唯一字段是日期字段。我已经研究过Python2网站,并尝试了解有关日期时间等的第8.1页,但还未能实现我的目标。 (使用Win 7,ArcGIS 10.2,Python 2.7.5和混合OS环境)

以下代码运行良好.....

with arcpy.da.SearchCursor(fc, ['LASTEDIT_ON']) as cursor:
    for row in cursor:
            if row[0] <> None:
                    print str(row[0])

但是我需要它来排除返回的行,其中小时/分钟/秒都是00:00:00。

2014-05-13 16:16:34
2014-09-26 11:45:15
2015-06-18 14:47:05
2015-02-03 10:38:50
2008-03-10 00:00:00
2007-06-06 00:00:00

我尝试在代码中添加小时和分钟,但我认为我完全走错了路。错误如下。

if row[0] <> None and datetime.hour <> 0:

Error Info:
'module' object has no attribute 'hour'

1 个答案:

答案 0 :(得分:1)

如果您的日期字段是实际日期字段,而不是文本字段,则以下代码将打印小时,分钟和秒的日期全为空:

import arcpy
with arcpy.da.SearchCursor(fc, 'LASTEDIT_ON') as cursor:
    for row in cursor:
        if row[0].hour == 0:
            if row[0].minute == 0:
                if row[0].second == 0:
                    print row[0]