将字典附加到具有列表的字典时出现Python键错误
我在这里发疯了。我在这里试图做的是从已经生成的csv文件中提取Reddit线程,然后提取线程的标题、注释数以及当前日期和时间,并将其附加到第一个字典中。然后我要做的是删除标点符号(我也有点不擅长)和编码。最后,将第一个字典中的每个值附加到第二个字典中,这样第一个字典中的每个线程都可以拥有自己的csv文件 TLDR:在将第一个dict附加到第二个dict时,我遇到了一个关键错误,有人能帮忙吗?还能提高我删除标点符号的机会吗将字典附加到具有列表的字典时出现Python键错误,python,csv,dictionary,keyerror,praw,Python,Csv,Dictionary,Keyerror,Praw,我在这里发疯了。我在这里试图做的是从已经生成的csv文件中提取Reddit线程,然后提取线程的标题、注释数以及当前日期和时间,并将其附加到第一个字典中。然后我要做的是删除标点符号(我也有点不擅长)和编码。最后,将第一个字典中的每个值附加到第二个字典中,这样第一个字典中的每个线程都可以拥有自己的csv文件 TLDR:在将第一个dict附加到第二个dict时,我遇到了一个关键错误,有人能帮忙吗?还能提高我删除标点符号的机会吗 import csv import praw import os impo
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()
标点部分:
str.replace(旧的,新的[,计数])
返回包含所有子字符串old的字符串副本
换成新的。如果给出了可选参数计数,则只有
第一次计数的出现被替换
导入字符串
>>>字符串、标点符号
'!"#$%&\'()*+,-./:;?@[\\]^_`{|}~'
>>>打孔=字符串。标点符号
>>>strg='bad{--}pun'。替换(冲压,')
>>>strg
“糟糕的{--}双关语”
>>>对于冲压中的p:
…strg=strg.替换(p')
...
>>>strg
“巴普”
请修复您的代码缩进(缩进严重的Python代码完全没有意义)并发布一个适当的MCVE。通过MCVE,我认为bruno的意思是,在定义字典和向函数传递参数时,您不需要使用这些反斜杠`\`我尝试将代码压缩一位好的,我将删除我在示例中看到的反斜杠
>>> 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'