Ошибка ключа Python Добавление словаря в словарь со списком - PullRequest
0 голосов
/ 03 сентября 2018

Я схожу с ума здесь. То, что я пытаюсь сделать здесь, это извлечь потоки Reddit из файла CSV, который уже создан, затем извлечь заголовок потока, количество комментариев, текущую дату и время и добавить его в первый словарь. Затем я пытаюсь убрать знаки препинания (что я тоже до сих пор не делаю) и кодировку. Наконец добавьте каждое значение из первого словаря во второй, чтобы каждый поток из первого словаря мог иметь свой отдельный файл 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 голосов
/ 03 сентября 2018

пунктуация:

str.replace (старый, новый [, count])

Возвращает копию строки со всеми вхождениями старой строки заменены на новые. Если указан необязательный аргумент 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'
...