我正在 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]))
我对这两个代码片段进行了计时,它们对于 20000 条记录的速度大致相同。在风格上,我更喜欢代码的第一个版本。
代码的第一个版本是集合理解的正确用法吗?还是我应该始终坚持第二种方法?
编辑:按照建议改进格式。我大多只是从 IDE 复制和粘贴。对不起,伙计们。