大约有183套tweet,我希望这些tweet插入与列名称相同的特定键中的值。问题是我正在循环“文件”并打印出来,其中显示了我想要的所有字典集,但是当我使用json.loads(i)时,它只能捕获1个字典。
import sqlite3
import json
conn = sqlite3.connect('csc455.db')
c = conn.cursor()
tweet =
'''create table tweet(
created_at nvarchar(500),
id_str varchar(500),
text varchar(500),
source text,
in_reply_to_user_id integer null,
in_reply_to_screen_name nvarchar(3000) null,
in_reply_to_status_id integer null,
retweet_count boolean,
contributors nvarchar(200) null
); '''
c.execute('''drop table tweet''')
c.execute(tweet)
read = open('Tweet1_Assignment4 (1).txt')
file = read.readline().strip('\n').split('EndOfTweet')
read.close()
for i in file:
jsonn = json.loads(i)
对不起,我对这种环境还很陌生。
答案 0 :(得分:0)
由于以下原因,它仅读取一行 ... read。 readline() .strip('\ n')... 应该是
f = open('Tweet1_Assignment4 (1).txt')
file = f.read().strip('\n').split('EndOfTweet')
f.close()
.readline()
读一行
.read()
读取所有文件内容(这就是为什么我将变量名从read更改为f的原因,因为您是阴影方法名)