如何使用python创建一个有3个用户和每个用户2个键的json? 问题: 如何使用python创建一个具有3个用户和每个用户2个键的数据库 目标: 我有3个用户,每个用户有2个密钥。我需要为它创建一个json。但是代码非常凌乱。 预期结果:
对于三个用户,这样做。 实际结果: 它创建类似于上面的的json。 参考代码: json的太大了,所以我切了一些部分如何使用python创建一个有3个用户和每个用户2个键的json? 问题: 如何使用python创建一个具有3个用户和每个用户2个键的数据库 目标: 我有3个用户,每个用户有2个密钥。我需要为它创建一个json。但是代码非常凌乱。 预期结果:,python,json,dictionary,Python,Json,Dictionary,对于三个用户,这样做。 实际结果: 它创建类似于上面的的json。 参考代码: json的太大了,所以我切了一些部分 谢谢你的阅读 代码是一团乱麻,但你看: import re import random as ran import string as stri import json global userid1, username1, password1, key1, premium_test, special_sandbox_test, tokens, key_dict l1 = []
谢谢你的阅读 代码是一团乱麻,但你看:
import re
import random as ran
import string as stri
import json
global userid1, username1, password1, key1, premium_test, special_sandbox_test, tokens, key_dict
l1 = []
key_list_dict = []
name_list = []
id_list = []
p5 = []
pwd_list = []
key_list = []
user_dict_final = []
k = 10000000000
j = 99999999999
p10 = 2
for i in range(3):
member = str(input("Type the person's name. "))
if member == 'exit()' or member == 'exit' or member == 'e':
print("Okay exiting!")
break
else:
u8 = re.search(r"\s", member)
if u8:
uo, ui1 = member.split(' ')
iw, a98 = str(uo).capitalize(), str(ui1).capitalize()
p98 = ''.join(iw + '_' + a98)
member = p98
else:
uo = member.capitalize()
member = uo
name_list.append(member)
id1 = ran.randint(k, j)
id_list.append(str(id1))
for _ in range(p10):
yt = ''.join(l + '-' * (n % 5 == 4) for n, l in enumerate(ran.choice(stri.ascii_uppercase + stri.digits) for _ in range(ran.choice([25, 35])))).rstrip('-')
premium_key = ''.join(l + '-' * (n % 5 == 4) for n, l in enumerate(ran.choice(stri.ascii_uppercase + stri.digits) for _ in range(25))).rstrip('-')
special_sandbox_key = ''.join(l + '-' * (n % 5 == 4) for n, l in enumerate(ran.choice(stri.ascii_uppercase + stri.digits) for _ in range(35))).rstrip('-')
p5.append(yt)
pwd = ''.join(ran.choice(stri.ascii_lowercase + stri.digits + stri.punctuation) for _ in range(ran.randint(10, 36)))
pwd_list.append(pwd)
userid = id1
username = member
password = pwd
tokens = ["userID", "username", "password", "keys"]
values = [userid, username, password]
user_dict = {tokens[i]: values[i] for i in range(len(values))}
premium_key_token = ["premium", "key"]
premium_key_value = [True, premium_key]
special_sandbox_key_token = ["special_sandbox", "key"]
special_sandbox_key_value = [True, special_sandbox_key]
premium_key_dict = {premium_key_token[i]: premium_key_value[i] for i in range(len(premium_key_value))}
sandbox_key_dict = {special_sandbox_key_token[i]: special_sandbox_key_value[i] for i in range(len(special_sandbox_key_value))}
key_list_dict.append(premium_key_dict)
key_list_dict.append(sandbox_key_dict)
print("Key_list: " + str(key_list_dict))
user_dict[tokens[3]] = key_list_dict
user_dict_final.append(user_dict)
print("User_dict: {}".format(user_dict))
key_list_dict = []
with open("file1.json", "w") as f1:
json.dump(user_dict_final, f1, indent=4)
请从正确命名变量开始。将您的逻辑拆分为函数。它非常混乱@vishnudev您应该问这样一个问题:如何消除列表元素的重复数据。当这是你的问题时,答案很容易找到——嘿,我想让它变得动态@ShlokSayaniCan,你能详细解释一下吗?你想让哪个部分充满活力?我自己做的@ShlokSayani我可以更新答案吗?
[
{
"userID": "23927612607",
"username": "Ryj\\",
"password": "&f~6)g/l@(8",
"keys": [
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "T38PH-HFQIY-KK88M-GRWTK-AEM2O"
}
]
},
{
"userID": "23927612607",
"username": "Ryj\\",
"password": "&f~6)g/l@(8",
"keys": [
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "RB3YV-27DTH-IQD0R-2JHNF-6N70P"
},
{
"special_sandbox": true,
"key": "XFP9R-RKZ1V-V8TEJ-FPJTS-JT0ER-8RRFY-594V1"
},
{
"premium": true,
"key": "T38PH-HFQIY-KK88M-GRWTK-AEM2O"
}
]
}
global userid1, username1, password1, key1, premium_test, special_sandbox_test, tokens, key_dict
l1 = []
key_list_dict = []
p1 = []
p3 = []
p5 = []
p7 = []
key_list = []
k = 10000000000
j = 99999999999
p10 = 2
for i in range(3):
member = str(input("Type the person's name. "))
if member == 'exit()' or member == 'exit' or member == 'e':
print("Okay exiting!")
break
else:
u8 = re.search(r"\s", member)
if u8:
uo, ui1 = member.split(' ')
iw, a98 = str(uo).capitalize(), str(ui1).capitalize()
p98 = ''.join(iw + '_' + a98)
member = p98
else:
uo = member.capitalize()
member = uo
p1.append(member)
id1 = ran.randint(k, j)
p3.append(str(id1))
for _ in range(p10):
yt = ''.join(l + '-' * (n % 5 == 4) for n, l in enumerate(ran.choice(stri.ascii_uppercase + stri.digits) for _ in range(ran.choice([25, 35])))).rstrip('-')
p5.append(yt)
p6 = ''.join(ran.choice(stri.ascii_lowercase + stri.digits + stri.punctuation) for _ in range(ran.randint(10, 36)))
p7.append(p6)
for a, e, o, y in zip(p1, p3, p5, p7):
userid1 = e
username1 = a
password1 = y
key1 = o
key_list.append(key1)
userid = userid1
username = username1
password = password1
tokens = ["userID", "username", "password", "keys"]
values = [userid, username, password]
user_dict = {tokens[i]: values[i] for i in range(len(values))}
for key in key_list:
key_test = key.replace("-", "")
premium_test = True if (len(key_test) == 25) else False
special_sandbox_test = True if (len(key_test) == 35) else False
key_tokens = ["premium", "special_sandbox", "key"]
key_values = [premium_test, special_sandbox_test, key]
premium_key_token = ["premium", "key"]
premium_key_value = [premium_test, key]
special_sandbox_key_token = ["special_sandbox", "key"]
special_sandbox_key_value = [special_sandbox_test, key]
if premium_test:
key_dict = {premium_key_token[i]: premium_key_value[i] for i in range(len(premium_key_value))}
else:
key_dict = {special_sandbox_key_token[i]: special_sandbox_key_value[i] for i in range(len(special_sandbox_key_value))}
key_list_dict.append(key_dict)
user_dict[tokens[3]] = key_list_dict
print(user_dict)
l1.append(user_dict)
print(l1)
with open("file1.json", "w") as f1:
json.dump(l1, f1, indent=4)
import re
import random as ran
import string as stri
import json
global userid1, username1, password1, key1, premium_test, special_sandbox_test, tokens, key_dict
l1 = []
key_list_dict = []
name_list = []
id_list = []
p5 = []
pwd_list = []
key_list = []
user_dict_final = []
k = 10000000000
j = 99999999999
p10 = 2
for i in range(3):
member = str(input("Type the person's name. "))
if member == 'exit()' or member == 'exit' or member == 'e':
print("Okay exiting!")
break
else:
u8 = re.search(r"\s", member)
if u8:
uo, ui1 = member.split(' ')
iw, a98 = str(uo).capitalize(), str(ui1).capitalize()
p98 = ''.join(iw + '_' + a98)
member = p98
else:
uo = member.capitalize()
member = uo
name_list.append(member)
id1 = ran.randint(k, j)
id_list.append(str(id1))
for _ in range(p10):
yt = ''.join(l + '-' * (n % 5 == 4) for n, l in enumerate(ran.choice(stri.ascii_uppercase + stri.digits) for _ in range(ran.choice([25, 35])))).rstrip('-')
premium_key = ''.join(l + '-' * (n % 5 == 4) for n, l in enumerate(ran.choice(stri.ascii_uppercase + stri.digits) for _ in range(25))).rstrip('-')
special_sandbox_key = ''.join(l + '-' * (n % 5 == 4) for n, l in enumerate(ran.choice(stri.ascii_uppercase + stri.digits) for _ in range(35))).rstrip('-')
p5.append(yt)
pwd = ''.join(ran.choice(stri.ascii_lowercase + stri.digits + stri.punctuation) for _ in range(ran.randint(10, 36)))
pwd_list.append(pwd)
userid = id1
username = member
password = pwd
tokens = ["userID", "username", "password", "keys"]
values = [userid, username, password]
user_dict = {tokens[i]: values[i] for i in range(len(values))}
premium_key_token = ["premium", "key"]
premium_key_value = [True, premium_key]
special_sandbox_key_token = ["special_sandbox", "key"]
special_sandbox_key_value = [True, special_sandbox_key]
premium_key_dict = {premium_key_token[i]: premium_key_value[i] for i in range(len(premium_key_value))}
sandbox_key_dict = {special_sandbox_key_token[i]: special_sandbox_key_value[i] for i in range(len(special_sandbox_key_value))}
key_list_dict.append(premium_key_dict)
key_list_dict.append(sandbox_key_dict)
print("Key_list: " + str(key_list_dict))
user_dict[tokens[3]] = key_list_dict
user_dict_final.append(user_dict)
print("User_dict: {}".format(user_dict))
key_list_dict = []
with open("file1.json", "w") as f1:
json.dump(user_dict_final, f1, indent=4)