提高超过3000个词条的词典的性能

2024-09-28 23:41:16 发布

您现在位置:Python中文网/ 问答频道 /正文

import random

def gennum(count=1):
    num1=[]
    temp2={}
    for i in range(1,50):
        num1.append(i)
    for j in range(count):
        temp2[j]=random.sample(num1,7)
    return temp2

print(gennum(3000))

当我试图创造3000多个记录。记录速度真的很快慢点。那个pythonshell变得迟钝,有时没有响应。你知道吗

1.延迟是由于代码或创建的记录太多造成的??你知道吗

2.单个词典的最大大小是多少??你知道吗

3.如果有人能推荐一本书,详细介绍python的所有主题,我将不胜感激,因为我读了两本python的书,解释了列表、dict等,我找不到解决上述问题的方法。你知道吗

我是编程新手,英语不好,谢谢你的耐心!你知道吗


Tags: sampleinimportforreturndefcount记录
1条回答
网友
1楼 · 发布于 2024-09-28 23:41:16

实际上,并不是字典的创建导致shell延迟和不响应,而是因为print语句,python IDLE(我猜)不支持打印大量内容。如果不打印而是将其存储在这样的变量中:num = gennum(3000),要检查,print(len(gennum))将输出3000,它将立即完成。如果你真的想查看它,试着把它保存到一个文本文件中,然后从那里查看。你知道吗

旁注:从控制台(Terminal,cmd)运行脚本将正常打印,不会出现任何问题,因为它们最多可以显示30000个chr,但在此之后,控制台将自动删除开头,以将总chr保持在限制之下。但基本上,这取决于你的系统。你知道吗

相关问题 更多 >