Python で一連の NUM_RECORDS タプルを作成しています。これは私のコードです。
record_key_list = {(choice(tuple(studentID_list)),
choice(tuple(courseID_list)),
randint(2012, 2016),
choice(semesters),
choice(grades)[0])
for no_use in range(NUM_RECORDS)}
別の方法は、このように問題をコーディングすることです。
record_key_list = set()
while len(record_key_list) < NUM_RECORDS:
record_key_list.add((choice(tuple(studentID_list)),
choice(tuple(courseID_list)),
randint(2012, 2016),
choice(semesters),
choice(grades)[0]))
2 つのコード スニペットの時間を計測したところ、20000 レコードの速度とほぼ同じでした。スタイル的には、コードの最初のバージョンを好みます。
コードの最初のバージョンは集合内包表記の正しい使用法ですか? それとも、常に2番目の方法に固執する必要がありますか?
編集:提案されたようにフォーマットを改善しました。ほとんどの場合、IDE からコピーして貼り付けただけです。ごめんなさい、みんな。