如何通过使用Python对CSV文件中的日期进行排序来获得列中的最高值?

2024-09-25 06:25:51 发布

您现在位置:Python中文网/ 问答频道 /正文

如何通过使用Python对CSV文件中的日期进行排序来获得列中的最高值?在

我的代码:

if sys.argv[1] == "-p":
    c = sys.argv[2]
    col_name= r"\\DT001\Process(SK)\Virtual"
    #d = sys.argv[3]
    col_name2 = r"(PDH-CSV 4.0) (GMT Standard Time)(0)"

    with open(c, 'rb') as inf:
        reader = csv.reader(inf)
        col_index = next(reader).index(col_name)
        highest = float(max(rec[col_index] for rec in reader))

        reader2 = csv.reader2(inf)
        col_index2 = next(reader).index(col_name2)
        date = '7/19/2011' 


        #gigabytes = highest / 1073741824
        gigabytes = highest /1024/1024/1024
        print "Performance Counters Peak:\n", gigabytes, "GB" 

我能够对最高值进行排序,但我无法通过使用Python脚本对CSV文件中所需的日期进行排序来找到最高值。在


Tags: 文件csvnameindex排序syscolreader
1条回答
网友
1楼 · 发布于 2024-09-25 06:25:51

使用此代码段

from  time import strptime
def filterByDate(mydate , start,end):
    format = "%m/%d/%Y"
    return strptime(start,format) <= strptime(mydate,format) and strptime(mydate,format) <= strptime(end,format)
...
...
highest = float(max(rec[col_index] for rec in reader if filterByDate(rec[date_col_index],startDate,endDate)))

相关问题 更多 >