我有一个看起来像这样的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)
然后返回错误。有没有简单的方法可以做到这一点?
谢谢。
答案 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"]}