Python函数从文本文件构建列表

2024-10-03 02:47:27 发布

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

对于我的家庭作业,我需要写这个函数的主体,使用注释作为我的要求。评论中提到的其他职能已提供给我:

def eventfreq(year,month):

'''
  Read DOT1000.txt and return a list of (d,ct)
  pairs, where d is a date object of the form
     datetime.date(A,B,C)
  having A equal to the year argument and 
  B equal to the month argument to eventfreq(year,month).
  The ct part of each pair is the number of records 
  that had a date equal to datetime.date(A,B,C).

  One more requirement:  sort the returned list 
  in increasing order by date (the sorted function will
  do this for you)

  Use fieldict("DOT1000.txt") to get the dictionary
  of tuples used for building the list of pairs
  that eventfreq(year,month) will return.
  '''

这是我的努力:

def eventfreq(year, month):
    N=fieldict('DOT1000.txt')[line][1]
    L = []  # empty List for accumulation
    for line in N:  # data file is standard input 

               st = N[1] # get datetime.date 
               (L[st] = L.get(st,0) + 1)

Tags: ofthetotxtforgetdatetimedate
1条回答
网友
1楼 · 发布于 2024-10-03 02:47:27

试着检查一下:

def eventfreq(year, month):
    dates = [dt for x, dt, y in fieldict('DOT1000.txt') if dt.year==year and dt.month==month]
    return [(dt, dates.count(dt)) for dt in set(dates)     

相关问题 更多 >