歡迎關注各平台通用賬號:一個有趣的靈魂W
這個問題爆的有點莫名其妙,代碼~環境基本沒什么大的變化,好端端就報錯了,原先的代碼運行了很久才發現,沒有結果?摸排了好久都沒發現問題。直到pycharm和spyder更新后,總算是發現了報錯信息:
之前安裝好python+GDAL+‘python gdal’后,利用python調用cmd運行gdal的裁剪~轉換~等功能都很正常。直到最近,不正常了,先上報錯:
ERROR 1: PROJ: proj_create_from_database: Cannot find proj.db ERROR 1: Failed to process SRS definition: EPSG:4326
就在python中出問題,不論是使用os還是subprocess.call,都無法正常運行。
一開始我重裝了gdal2.4,突然可以運行重投影。但是第二天又報錯了,又重裝,無果,嘗試更換3.7.8python和3.8的python,無果(插一句,發現3.8更新里多進程可以實現內存共享了,下次看看多3.8進程的威力吧)。后來我試着用python2.7,可以運行,但是不想用。
問題一步一步排除之后,查找問題,在stack overflow上發現有人解決了:
https://stackoverflow.com/questions/56472933/pyinstaller-executable-fails
有興趣的可以去看看,解決的辦法也是很粗暴。但並沒有把核心問題解決,我估計下次還會出錯。
題主真是個自問自答的小可愛!
我試着,也順利解決了:
看來問題出在os上
import os import sys os.environ['PROJ_LIB'] = os.path.dirname(sys.argv[0])
附錄:
spyder更新了,越來越接近pycharm的樣式了,用的不是很習慣,但還是慢慢接受新鮮事物吧。
唯一困難的就是第三方庫之間的遷移,因為換成了python3.8,所以之前3.7.3的庫並不能直接copy。又擔心硬復制回頭會出問題,還是乖乖的一個一個conda install吧。
往期可以來點~
百度網盤下載很慢吧,Pandownload之后的新工具-億尋





