回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有2个JSON文件。一份学生档案和一份学生档案。你知道吗</p>
<p>我有一份字典清单,上面有学生的姓名、电子邮件和学生号。你知道吗</p>
<p>我想做的是,如果有60个学生,我想给他们一个唯一的学号。这一部分在elif语句中起作用。我不知道如何实现的部分是:</p>
<p>如果有20个学生,我想给例如2个学生相同的学生号码(这听起来很愚蠢,但我需要它)。在这种情况下,student是键,studentnumber是值。你知道吗</p>
<p>我现在拥有:</p>
<pre><code>
# student
[{"Student1":029182,"e-mail":"example@.com"},{"Student2":0591238,"e-mail":"example@.com"},{"Student3":9213189,"e-mail":"example@.com"}]
studentnumbers = [{"studentnumber":"029182","ID":0},{"studentnumber":"0591238","ID":1},{"studentnumber":"9213189","ID":2}]
students = [list(data.values())[0] for data in studentnumbers]
ID = 0
# students is a list of studentnumbers
if len(students) <= 20:
# studentInfo is my dictionary with the key and values
for data in studentnumbers:
try:
pass
except IndexError:
pass
elif len(students) <= 60:
for data in studentnumbers:
try:
studentnumbers[ID] = students[ID]
ID += 1
break
except IndexError:
pass
print("..")
else:
print("...")
with open('Students.json','w') as instudent:
json.dump(studentnumbers,instudent,indent=2)
</code></pre>
<p>输出我现在拥有的:</p>
<pre><code>[{"Student1":029182,"e-mail":"example@.com","studentnumber":029182},
{"Student2":0591238,"e-mail":"example@.com","studentnumber":9213189},
{"Student3":9213189,"e-mail":"example@.com","studentnumber":0591238},
{"Student4":9213189,"e-mail":"example@.com","studentnumber":0294832},
{"Student5":9213189,"e-mail":"example@.com","studentnumber":0591823},
{"Student6":9213189,"e-mail":"example@.com","studentnumber":0501852}]
</code></pre>
<p>我想要的是:</p>
<pre><code>[{"Student1":029182,"e-mail":"example@.com","studentnumber":029182},
{"Student2":0591238,"e-mail":"example@.com","studentnumber":029182},
{"Student3":9213189,"e-mail":"example@.com","studentnumber":029182},
{"Student4":9213189,"e-mail":"example@.com","studentnumber":9213189},
{"Student5":9213189,"e-mail":"example@.com","studentnumber":9213189},
{"Student6":9213189,"e-mail":"example@.com","studentnumber":9213189}]
</code></pre>