在过去的一个小时里,我一直在尝试在 Windows 上的 Python 3.6.5(64 位)上安装 GDAL,但没有任何效果。
我在 SO 上访问了一些问题,在 YT 上观看了视频,但没有一个适用于我的情况(这没有什么特别之处)。
谁能提供一个循序渐进的解决方案,最好是经过测试的解决方案,这样我就可以弄清楚我到底做错了什么?
如有必要,我愿意提供任何操作系统设置信息/屏幕截图。
更新:我正在尝试安装 GDAL 以将 TIF(16 位)文件转换为 JPG 或 PNG。虽然我设法用第二种方法安装了 GDAL(第二次尝试),但我无法使用 gdal_translate。所以不是每个 GDAL 库/版本都适合我。
第一种方法:
GDAL 2.3.0 (建议 here )
需要“GDAL Windows 二进制文件”。谷歌搜索让我找到了这个:DownloadingGdalBinaries – GDAL
“gdal-203-1911-x64-core.msi” 和 “GDAL-2.3.0.win-amd64-py3.4.msi”。 (最新版本是针对 python 3.4 的?)“gdal-203-1911-x64-core.msi” 安装到 “C:\Program Files\GDAL”。在 README 中,它说
Add the installation directory bin folder to your system PATH...
C:\gdalwin32-1.7\bin
"C:\Program Files\GDAL" 中没有"bin" 文件夹。 GDAL 目录中的文件夹:"csharp"、"gdal-data"、"gdalplugins"、"license" , “projlib”。那么……?
我什至不打算完成这个,因为它看起来已经过时了(我已经通过电子邮件向它的作者发送了有关描述的信息,所以我希望它得到修复)。我按照其他步骤操作,但显然没有用。欢迎试用。
第二种方法:
Gohlke Pythonlibs (建议 here )
“GDAL-2.2.4-cp36-cp36m-win_amd64.whl”在页面顶部,它说(我可能在第一次尝试时错过了这个)
Many binaries depend on numpy-1.14+mkl and ...
所以我下载了 "numpy-1.14.4+mkl-cp36-cp36m-win_amd64.whl"(在同一页面)
安装它们:
pip install numpy-1.14.4+mkl-cp36-cp36m-win_amd64.whl
pip 安装 GDAL-2.2.4-cp36-cp36m-win_amd64.whl
它起作用了(虽然我在使用 gdal_translate 时遇到缺少 dll (ogr_FileGDB) 错误,所以没有使用它)
我会用我试过的方法更新它。
最佳答案
conda-forge 的预构建 GDAL 版本在 Windows 64 位 python 3.6.5 上运行良好
安装 Anaconda 后,我通常使用 Anaconda 提示符而不是常规的 Windows 命令提示符。
(可选)如果您想在特定环境中隔离它
我会推荐使用 anaconda 的环境,所以创建一些环境 像这样
conda create --name gdal_env python=3.6.5
激活gdal_env
不需要环境,因此您可以跳过此步骤并继续安装 gdal。
安装gdal
conda install -c conda-forge gdal
我发现 conda-forge 是(到目前为止)在 Windows 上安装 GDAL 的最简单方法。如果出于某种原因你需要使用另一个 python 发行版,我发现这里的预构建二进制文件也可以正常工作 https://www.lfd.uci.edu/~gohlke/pythonlibs/如果你关注 this guide
关于python - Python 3.6.5(64 位)上的 GDAL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50721107/
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po
我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%
我想设置一个默认日期,例如实际日期,我该如何设置?还有如何在组合框中设置默认值顺便问一下,date_field_tag和date_field之间有什么区别? 最佳答案 试试这个:将默认日期作为第二个参数传递。youcorrectlysetthedefaultvalueofcomboboxasshowninyourquestion. 关于ruby-on-rails-date_field_tag,如何设置默认日期?[rails上的ruby],我们在StackOverflow上找到一个类似的问
我将我的Rails应用程序部署到OpenShift,它运行良好,但我无法在生产服务器上运行“Rails控制台”。它给了我这个错误。我该如何解决这个问题?我尝试更新rubygems,但它也给出了权限被拒绝的错误,我也无法做到。railsc错误:Warning:You'reusingRubygems1.8.24withSpring.UpgradetoatleastRubygems2.1.0andrun`gempristine--all`forbetterstartupperformance./opt/rh/ruby193/root/usr/share/rubygems/rubygems
我正在尝试从Postgresql表(table1)中获取数据,该表由另一个相关表(property)的字段(table2)过滤。在纯SQL中,我会这样编写查询:SELECT*FROMtable1JOINtable2USING(table2_id)WHEREtable2.propertyLIKE'query%'这工作正常:scope:my_scope,->(query){includes(:table2).where("table2.property":query)}但我真正需要的是使用LIKE运算符进行过滤,而不是严格相等。然而,这是行不通的:scope:my_scope,->(que
我正在尝试在Ruby中复制Convert.ToBase64String()行为。这是我的C#代码:varsha1=newSHA1CryptoServiceProvider();varpasswordBytes=Encoding.UTF8.GetBytes("password");varpasswordHash=sha1.ComputeHash(passwordBytes);returnConvert.ToBase64String(passwordHash);//returns"W6ph5Mm5Pz8GgiULbPgzG37mj9g="当我在Ruby中尝试同样的事情时,我得到了相同sha
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Pythonconditionalassignmentoperator对于这样一个简单的问题表示歉意,但是谷歌搜索||=并不是很有帮助;)Python中是否有与Ruby和Perl中的||=语句等效的语句?例如:foo="hey"foo||="what"#assignfooifit'sundefined#fooisstill"hey"bar||="yeah"#baris"yeah"另外,类似这样的东西的通用术语是什么?条件分配是我的第一个猜测,但Wikipediapage跟我想的不太一样。
什么是ruby的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht
华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o