Python 处理大型数据库时出现内存错误
当我在windows上的Pycharm 4上运行此操作时,我在以下代码中得到一个错误:Python 处理大型数据库时出现内存错误,python,memory,pycharm,Python,Memory,Pycharm,当我在windows上的Pycharm 4上运行此操作时,我在以下代码中得到一个错误: PDBSumWWW = urllib.urlopen("https://www.ebi.ac.uk/thornton-srv/databases/pdbsum/data/seqdata.dat") PDBSum = PDBSumWWW.read().splitlines() PDBSumWWW.close() 这是错误消息: 回溯(最近一次呼叫最后一次): 文件“C:/Users/LuisAlberto/P
PDBSumWWW = urllib.urlopen("https://www.ebi.ac.uk/thornton-srv/databases/pdbsum/data/seqdata.dat")
PDBSum = PDBSumWWW.read().splitlines()
PDBSumWWW.close()
这是错误消息:
回溯(最近一次呼叫最后一次):
文件“C:/Users/LuisAlberto/PycharmProjects/MSc/SeqPDBSumIRIndex.py”,第98行,在
main()
文件“C:/Users/LuisAlberto/PycharmProjects/MSc/SeqPDBSumIRIndex.py”,第40行,主目录
PDBSum=PDBSumWWW.read().splitlines()
记忆者
然而,在MacBookAir上运行时,这种情况不会发生
我如何克服这个问题?这是我能想到的解决您问题的最简单的解决方案。
在此解决方案中,for循环将迭代数据库中的每一行。
每一行都将分配给
line
变量
PDBSumWWW = urllib.urlopen("https://www.ebi.ac.uk/thornton-srv/databases/pdbsum/data/seqdata.dat")
for line in PDBSumWWW:
# Do necessary calculations.
PDBSumWWW.close()
这是我能想到的解决你问题的最简单的方法。
在此解决方案中,for循环将迭代数据库中的每一行。
每一行都将分配给
line
变量
PDBSumWWW = urllib.urlopen("https://www.ebi.ac.uk/thornton-srv/databases/pdbsum/data/seqdata.dat")
for line in PDBSumWWW:
# Do necessary calculations.
PDBSumWWW.close()
链接资源中的数据大小为56056571字节(~56 MB),
MemoryError
很可能表示运行Windows的计算机没有足够的内存来处理可用数据(而Macbook Air有)。请确定。我是如何克服这个问题的,因为windows笔记本电脑的规格比Mac book Air的要好。一般来说,“更好的规格”并不意味着你的程序可以获得更多的内存。仔细查看您的系统规格,看看一个进程默认获得了多少RAM。如果可以,请重新配置它。请在MacBook上检查相同的设置,以确保。链接资源中的数据大小为56056571字节(~56 MB),MemoryError
很可能表示运行Windows的计算机没有足够的内存来处理可用数据(而MacBook Air则有)。确定。我是如何克服这个问题的,因为windows笔记本电脑的规格比Mac book Air的要好。一般来说,“更好的规格”并不意味着你的程序可以获得更多的内存。仔细查看您的系统规格,看看一个进程默认获得了多少RAM。如果可以,请重新配置它。请在MacBook上查看相同的内容,以确定是否正确。谢谢您的帮助。这对加快进程有很大帮助!谢谢你的帮助。这对加快进程有很大帮助!