Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 允许的最大activewidth对象数_Python 3.x_Tkinter - Fatal编程技术网

Python 3.x 允许的最大activewidth对象数

Python 3.x 允许的最大activewidth对象数,python-3.x,tkinter,Python 3.x,Tkinter,我的程序在数据有限的情况下运行良好,但当我放入所有四个数据库时,activewidth将无法工作 数据库1有29990个条目。 数据库2有大约27000个条目。 数据库3大约有17000个条目。 数据库4有430个条目 每个数据库按其种类分组,包括业务类型、名称、地址、城市、州、电话号码、经度、纬度、销售税信息和每日营业时间 总共12.1Mb的数据 只有在程序中使用database 1,它才能正常工作,我可以滚动地图上的一个点,activewidth将增加点的大小,程序将在屏幕的左侧显示基础数据

我的程序在数据有限的情况下运行良好,但当我放入所有四个数据库时,activewidth将无法工作

数据库1有29990个条目。 数据库2有大约27000个条目。 数据库3大约有17000个条目。 数据库4有430个条目

每个数据库按其种类分组,包括业务类型、名称、地址、城市、州、电话号码、经度、纬度、销售税信息和每日营业时间

总共12.1Mb的数据

只有在程序中使用database 1,它才能正常工作,我可以滚动地图上的一个点,activewidth将增加点的大小,程序将在屏幕的左侧显示基础数据,就像预期的那样

现在,我已经添加了所有四个贴图,并且可以分别单击它们的打开和关闭状态,如果只打开#1,activewidth将无法工作,并且基础数据也不会显示在左侧。地图上的点就在那里,我可以点击所有四个复选按钮,打开和关闭这些点。我目前还没有数据库2-4中底层数据的代码,只是能够打开和关闭它们。现在只有activewidth不工作,因为我已经有了它,所以我可以查看所有4个数据库的点

我决定尝试注释数据库2-4的所有代码,看看会发生什么,然后它又恢复了正常工作。然后我把数据库2中的数据添加到混合中,它又恢复到不工作状态。然后我只尝试了数据库2,只要数据库1被注释掉就可以了。数据库1处于活动状态时,activewidth的工作速度非常慢/根本不工作

是否有一个可行的最大数量的条目,我可以使用。希望不是因为我还有几个数据库要完成,并添加到程序中,这将使所有条目的总数超过100K,然后才能全部完成

当我转到外接程序数据库2-4时,我只是将self.alocation更改为self.blocation,所以没有其他意义。我只是更改标识符以显示正在使用哪个数据库,并在例程之间复制其余代码,因为一切都是相同的…只是将不同的业务划分为适当的分组数据库。它似乎是在被使用的数据量,而不是在与程序的编写方式做任何事情

我认为,通过拆分文件,不仅对我有利,而且可以使文件变小,这将有助于缓解问题,但到目前为止还没有。有没有其他解决数据过载的方法

self.alocation = []
for x in range(0, len(self.atype)):
    pix1x = round((float(self.along[x])+(-self.longitudecenter+(self.p/2)))/(self.p/714),0)
    pix1y = round((((self.p/2) + self.latitudecenter-(float(self.alat[x])))/(self.p/714)),0)
    z = self.canvas.create_line(pix1x, pix1y, pix1x+4, pix1y+4, activewidth="10.0", fill = '', width = 5)
    self.alocation.append((z,x))

什么是“活动宽度”?你用的是不是除了Tkinter以外的图书馆?您的问题中似乎缺少一些非常重要的细节。当您用鼠标滚动某个点时,Activewidth会更改该点的大小。标准tkinter。刚刚添加了我用来设置屏幕上显示activewidth的点的代码。