Python关键字错误将字典追加到带有列表的字典

时间:2018-09-03 15:23:22

标签: python csv dictionary keyerror praw

我在这里迷失了方向。我在这里要做的是从已经生成的csv文件中拉出Reddit线程,然后拉出线程的标题,注释数以及当前日期和时间,并将其附加到第一个字典中。然后,我尝试做的是删除标点符号(我也仍然无法做到)和编码。最后,将第一个字典中的每个值附加到第二个字典中,以便第一个字典中的每个线程都可以拥有自己的单独的csv文件。

TLDR:我在将第一个字典追加到第二个字典时遇到关键错误,有人可以帮忙吗?还可以提高我删除标点符号的机会吗?

import csv
import praw
import os
import errno
import pandas as pd
import datetime as dt

thread_id = []


volume_dict = { "post":['These', 'are', 'values'], 
               "num_comments":['62', '43', '96'], 
               "date_time":[]
           }
volume_dict2 = { "post2":[], 
               "num_comments":[], 
               "date_time":[]
           } 


for post in volume_dict["post"]:
    volume_dict2['post2'].append(post)
    volume_dict2['num_comments'].append(volume_dict['num_comments'])
    volume_dict2['date_time'].append(dt.datetime.now())

    pathV = os.path.join(os.getcwd() + post + '.csv')

    volume_data = pd.DataFrame(volume_dict2)
    volume_data.to_csv(pathV, index=True)
    print('saved to' + pathV)
    volume_dict2.clear()

1 个答案:

答案 0 :(得分:0)

标点部分:

  

str.replace(old,new [,count])

     

返回带有所有出现的旧子字符串的字符串副本   换成新的。如果给出了可选的参数计数,则仅   第一次出现的次数被替换。

>>> import string
>>> string.punctuation
'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
>>> punch = string.punctuation
>>> strg = 'bad{-<+>-}pun'.replace(punch,'')
>>> strg
'bad{-<+>-}pun'
>>> for p in punch:
...     strg = strg.replace(p,'')
...
>>> strg
'badpun'