如何在Python中将变量添加到JSON列表?

时间:2018-10-20 04:38:43

标签: python json

我有一个看起来像这样的JSON文件:

{ "users":"John, admin"}

我想要的是能够在“用户”标题中添加字符串。 因此,基本上,我想允许用户输入新的用户名并将其添加到此列表中。使用以下Python代码:

newUserInfo = input("Enter a new username: ")

然后说我输入“ Michael” 然后,JSON文件应如下所示:

{ "users":"John, admin, Michael"}

我尝试了以下操作:

with open(userFile, "a") as userobj:
newUserInfo = json.dump(allUserInfo["users": newUserInfo], userobj)

然后返回错误。有没有简单的方法可以做到这一点?

谢谢。

1 个答案:

答案 0 :(得分:1)

将名称附加到字符串:

import json
s = '''{"users":"John, admin"}'''
data = json.loads(s)
newUserInfo = input("Enter a new username: ")
data['users'] += ', ' + newUserInfo
s2 = json.dumps(data)
print(s2)

输出:

{"users": "John, admin, Michael"}

但是使用JSON的更自然的方法是在列表中表示名称:

import json

s = '''{"users":["John","admin"]}'''

data = json.loads(s)
newUserInfo = input("Enter a new username: ")
data['users'].append(newUserInfo)
s2 = json.dumps(data)
print(s2)

输出:

{"users": ["John", "admin", "Michael"]}