Debian 配置 Python 开发与运行环境

配置 Python 开发与运行环境。

1.3.1. Debian下的安装与配置

Debian 是一个致力于自由软件开发并宣扬自由软件基金会理念的自愿者组织。 Debian 计划创建于 1993 年。当时,Ian Murdock 发出一份公开信, 邀请软件开发者们参与构建一个基于较新的 Linux 内核的完整而紧密的软件发行版。 经过多年的成长,那群由 自由软件基金会资助并受 GNU 哲理影响的爱好者已经演变为一个拥有大约 1026 位 Debian 开发人员的组织。

Debian 计划是一个致力于创建一个自由操作系统的合作组织。我们所创建的这个操作系统名为 Debian。 操作系统是使计算机运行的基本程序和工具的集合,其中最主要的部分称为内核 (kernel)。 内核是计算机中最重要的程序,负责一切基本的调度工作,并让您运行其他程序。 Debian 系统目前采用 Linux 内核或者 FreeBSD 内核。 Linux 是一个最初由 Linus Torvalds 创建,目前由全球成千上万的程序师共同维护的软件。 FreeBSD 是一个包括内核和其它软件的操作系统。 然而,让 Debian 支持其他内核的工作也正在进行,最主要的就是 Hurd。Hurd 是一组在微内核 (例如 Mach) 上运行的提供各种不同功能的守护进程。 Hurd 是由 GNU 工程所设计的自由软件。 我们所创建的这个操作系统中的大部分基本工具来自于 GNU 工程;因此我们把它们命名为 GNU/Linux GNU/kFreeBSD 和 GNU/Hurd。这些工具同样都是自由的。

在Debian 8最新版本中查看:

复制代码
$ uname -a
Linux localhost 3.16.0-4-amd64 #1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07) x86_64 GNU/Linux

1.3.2. 基本类库的安装

APT 是 Debian 以及从 Debian 衍生出的发行版(比如 Ubuntu)使用的包管理系统。 从用户的角度来说,基本包管理功能由命令提供。Linux 开发人员一直致力于让 Linux 更容易使用, 他们开发了其他工具(包括 GUI 工具)来补充基本工具,这对最终用户隐藏了基本工具的一部分。

更新 Debian 包 如果需要更新某个包,同样应该使用带 install 选项的 apt-get 命令。 在更新包之前,一定要运行 apt-get update,从而确保本地数据库反映最新的可用更新。

除了更新指定的包之外,还可以使用 apt-get upgrade 命令更新系统上的所有包。 与之相似,apt-get dist-upgrade 帮助迁移到发行版的新级别。 关于 apt-get 的其他功能和选项的更多信息参见手册页。

apt-get 是一种高级的软件包管理工具,在安装软件时,会自动解决软件安装过程中的依赖关系;

ap-get remove 不会自动删除不需要的软件包

aptitude 是一种带有UI界面的更高级的软件包安装管理工具, 自动解决软件包安装中的依赖关系; 并且在删除的时候,会自动删除不需要的软件依赖关系安装包。

1.3.3. 查看软件、类库的关系

查看版本:

复制代码
apt-cache show gdal-bin

apt-cache depends gdal-bin

1.3.4. 安装Python

GNU/Linux 操作系统中一般都带有 Python 安装版。 不必单独安装。

1.3.5. 安装相关组件与类库

在 Debian Linux 中的开源GIS组件依赖关系图 。

图 1.5 开源类库关系图

GDAL/OGR的安装

复制代码
# aptitude install python3-gdal gdal-bin

PROJ.4的安装

复制代码
# aptitude install  python3-pyproj proj-bin

Shapely的安装

复制代码
# aptitude install python3-shapely

Fiona的安装

复制代码
# aptitude install fiona python3-fiona

SpatiaLite安装

复制代码
aptitude install python-pyspatialite spatialite-bin

感谢 Linux 程序员们,感谢 Debian , 在 Debian 9中, 安装与使用 Mapnik 非常简单。

复制代码
# aptitude install python3-mapnik

bk@v:~$ python3 -c "import mapnik;print (mapnik.__file__)"
/usr/lib/python3/dist-packages/mapnik/__init__.py

执行上述代码后应该返回Python绑定的目录并且不出现错误。 如果上述没有成功,请回去检查下Mapnik有没有成功安装。

1.3.6. 编辑器与开发环境

最好是免费, 开源更好。 下面都是根据实际用过的情况介绍:

编辑器

初学, 建议使用纯文本编辑器。

  • Linux:Gvim, Emacs, Gedit. 选择一个就行。

  • Windows:Gvim, Notepad++, Editplut, E Text Editor(Windows下的textmate), UltraEdit(商业软件)。

  • Mac OS X:Gvim, 传说中的textmate(没用过)。

IDE

  • Linux:eclipse + pydev, Gvim + 相关插件

  • Windows: Eclipse + pydev, Gvim + 相关插件, IDLE(Python自带,外观简陋, 其实很强大), Ulipad(国内大牛开发)

PyCharm的配置与使用

一般情况下,如果不涉及 Web 开发,使用 PyCharm Community 版本完全可以满足要求。 另外,对于教育,或者在维护的开源项目(一年以上的活跃项目)可以申请免费的授权来使用专业版本。

相关推荐
Sirius.z6 小时前
第R6周:LSTM实现糖尿病探索与预测
python
名字还没想好☜6 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式
开发语言·数据库·python·字符串格式化·f-string
·薯条大王6 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
Dxy12393102167 小时前
Python 如何使用 MySQL 的事务
python·mysql
一壶浊酒..9 小时前
Scrape Webpack练习
开发语言·javascript·webpack
命运之光10 小时前
【C语言完整代码】就诊信息管理系统
java·c语言·开发语言
命运之光10 小时前
【C语言完整代码】图书管理系统:图书馆场景下的增删改查实战
c语言·开发语言
猿长大人10 小时前
C# | Serilog 新手入门
开发语言·c#·.net·log
今儿敲了吗11 小时前
Python ——第三方包
笔记·python
麒麟水手11 小时前
国产银河麒麟系统开发实录:跑通Streamlit,我踩过的6个坑
python