夏橙M兮 发表于 2020-9-22 21:57

【python】dict增删改查求着绝望了

快来一个大佬,救救我。我已经搞了快3个小时了。气死我了。感觉自己是个sb。时间浪费了。
我想做一个qq空间说说日期的统计,我想每一天都可以看到那年今日,好不容易csdn上找了一个代码,但是爬到还剩二页给暂停了。我也是无语了。之前用手机热点爬到32页给暂停了。我准备研究一下代码是怎么写的,但是我想还是先用已有的数据进行分析,那一天没有发表说说我准备水几个。结果一直搞到现在。python我是学了一点,又给忘了,现在又给捡起来了。早知道这么费时间,还不如用Java来分析采集数据。10分钟搞定。
既然浪费了这么长时间,我得有点收获,还是让大佬指点一下吧。
存在的话我就往dict里面添加,感觉没问题呀,错误提示我是空的,我想不明白。
import json
import re
if __name__ == '__main__':
    date_dict={}
    date_list=[]
    with open('./qq1.txt','r',encoding='utf-8') as f:
      for line in f.readlines():
            date = json.loads(line).get("time")
            date_list.append(date )
      print(len(set(date_list)))
      regex_date = "(\d{1,2})月(\d{1,2})日"
      for item in set(date_list):
            match_date = re.match(regex_date,item)
            month = match_date.group(1)
            day = match_date.group(2)
            '''
             if (day not in date_dict.keys()):
                date_dict = [].append(month)
            else:
                print('存在')
                print(date_dict.get(day))
                date_dict=date_dict.get(day).append(month)
            '''
            if (day not in date_dict.keys()):
                date_dict=
                print(date_dict.get(day))
            else:
                print('存在')
                print(date_dict.get(day))
                date_dict = date_dict.get(day).append(month)
    for i in range(1, 31):
      print("%s--------%s--",i,str(date_dict.get(key).sort()))

qq1.txt里面是这样的数据{"time": "2016年3月16日", "text": ""}

夏橙M兮 发表于 2020-9-22 21:58

我先去打吧游戏,希望打完有答案。拜托大佬了

ciker_li 发表于 2020-9-22 22:17

date_dict={}是字典类型,没有append方法

rex_the_failure 发表于 2020-9-22 22:22

第27行开始:
else:
                print('存在')
                print(date_dict.get(day))
                date_dict.append(month)
就OK了

ciker_li 发表于 2020-9-22 22:22

date_dict.get(day)返回的是None,没有append方法
你动态调试一下,看看date_dict.get(day)哪里出问题了

列明 发表于 2020-9-22 23:45

一行一行print下來你就知道問題在哪裏了、

gl809168510 发表于 2020-9-23 08:27

date_dict = date_dict.get(day, []).append(month)

知心 发表于 2020-9-23 09:28

请不要频繁回复,耽误楼主打游戏

夏橙M兮 发表于 2020-9-23 10:43

知心 发表于 2020-9-23 09:28
请不要频繁回复,耽误楼主打游戏

:@我要学习。知道吗?

冥月影 发表于 2020-10-4 17:54

if (day not in date_dict.keys()):
                date_dict=
                print(date_dict.get(day))
            else:
                print('存在')
                print(date_dict.get(day))
                date_dict = date_dict.get(day).append(month)

看看这段,我看了一下date_dict的值在date_dict = date_dict.get(day).append(month)是第一次使用,你可以试一下 date_dict.get(day, []).append(month) 或者 list(date_dict.get(day)).append(month),太久没用过Python,我也不确定能不能用。。。
页: [1]
查看完整版本: 【python】dict增删改查求着绝望了