我有一个输出json的python代码
import json
from faker import Faker
import random
from random import randint
import subprocess
fake = Faker('en_US')
for _ in range(1):
sms = {
"name": fake.name(),
"email": fake.email(),
"location": "usa"
}
with open('abc.json', 'w') as outfile:
json.dump(sms, outfile)
print(sms)
子流程:
^{pr2}$我得到的输出:
(b'{\n "name": "elmoroy",\n "email":"ssbyt@gmail.com"}\n', None)
我需要的输出:
{
"name": "elmoroy",
"email":"ssbyt@gmail.com
}
如果我调用output["name"]
,它应该返回elmoroy
。在
也许您应该尝试使用
json.load
,如下所示:请参阅json — JSON encoder and decoder中的“解码JSON”:
-编辑-
试试这个:
首先,您会得到一个文件,如:
^{pr2}$然后,您将得到另一个文件,如:
执行第一个文件,然后执行第二个文件,您可以看到第二个文件将文件内容解析为一个json对象。在
communicate()返回一个元组(stdout\u data,stderr\u data),您需要的输出在
output[0]
中,它是所需字典的字符串表示形式,然后可以使用my_dict = json.loads(output[0])
来获取字典。在更新:在循环中运行这个
my_dict
将包含打印的sms
变量的20个字典相关问题 更多 >
编程相关推荐