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

问题描述 投票:0回答:1

我在这里失去了理智。我在这里尝试做的是从已经生成的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()
python csv dictionary keyerror praw
1个回答
0
投票

标点符号部分:

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

返回字符串的副本,其中所有出现的substring old都替换为new。如果给出可选参数计数,则仅替换第一次计数。

>>> 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'
© www.soinside.com 2019 - 2024. All rights reserved.