《PyQt5 开发技巧与实践》学习笔记

Python开发技巧与实践

1 对Python包的操作
一个完整的大型Python程序项目是由模块和包的形式组织起来的。模块是一种组织形式,它将许多有关系的代码放到单独的文件中。包是Python模块所在的目录,为了组织好模块,才将多个模块组成一个包。
在cmd(命令行)中使用pip install package_name命令在线安装Python包。Python的离线安装包可从http://www.lfd.uci.edu/~gohlke/pythonlibs/下载。离线安装包为.whl文件,可以使用pip install.whl命令离线安装Python包。Python安装包的常用资源如下。
Python官方模块库,Pil网址:https://pypi.python.org/pypi
GitHub:https://github.org

1.1 安装pip
如果把编程语言比作武器,那么Python就是一把双管枪(Python2/Python3),而各种为Python编写的模块和包就是子弹。现在使用pip来装备我们的武器吧。以下操作在Windows系统下进行。
(1)按“Win+R”快捷键打开“运行”窗口,输入cmd命令后按回车键,打开命令行窗口,如图1和图2所示。
这里写图片描述
图1
这里写图片描述
图2

(2)执行以下命令安装pip,如图3所示。
easy_install pip
图3
图3

(3)pip的安装路径与Python2/Python3的安装路径是相同的,都在x:\Pythonxx\Scripts路径下。本例中Python3被安装在D:\installed_software\Python35目录下,如图4所示。
这里写图片描述图4

(4)使用pip安装模块,命令是:pip install模块名。注意:pip install和模块名之间有空格。输入命令后按回车键,在窗口中将会显示下载信息,安装位置在%/Python35/Lib/site-packages目录下,所以Python 3.5已经默认安装了pip。
如果通过pip命令安装模块失败,将出现如图5所示的错误信息。
这里写图片描述图5
请检查是否已经把%/Python35/Scripts目录添加到系统的环境变量中,因为pip默认安装在%/Python35/Scripts目录下。需要把这个目录添加到系统的环境变量中,比如Python的安装路径为C:\Python35\,那么需要在环境变量Path中添加“C:\Python35\Scripts\;”,记得以分号分隔。

1.2 pip常用命令
列出已安装的包:
pip freeze or pip list
导出requirements.txt:
pip freeze ><目录>/requirements.txt
在线安装包(模块库):
pip install <包名>
或者
pip install -r requirements.txt
使用==、>=、<=、>、<来指定版本,如果不使用,则安装最新版本。
安装本地包:
pip install <目录>/<文件名>
或者
pip install --use-wheel --no-index --find-links=wheelhouse/ <包名>
注意,<包名>前有空格,可简写为:
pip install --no-index -f=<目录>/ <包名>
卸载包:
pip uninstall <包名>
或者
pip uninstall -r requirements.txt
升级包:
pip install -U <包名>
升级pip:
pip install -U pip
显示包所在的目录:
pip show -f <包名>
搜索包:
pip search <搜索关键词>
查询可升级的包:
pip list -o
下载包而不安装:
pip install <包名> -d <目录>
或者
pip install -d <目录> -r requirements.txt
打包:
pip wheel <包名>
国内PyPI镜像:

http://pypi.douban.com/simple豆瓣
http://mirrors.aliyun.com/pypi/simple/ 阿里云 
http://pypi.mirrors.ustc.edu.cn/simple/ 中国科学技术大学
https://pypi.tuna.tsinghua.edu.cn/simple/ 清华大学
http://pypi.hustunique.com/ 华中理工大学
http://pypi.sdutlinux.org/ 山东理工大学
http://pypi.mirrors.ustc.edu.cn/ 中国科学技术大学
http://mirrors.sohu.com/python/ 搜狐镜像

指定镜像安装源:
pip install <包名> -i <指定镜像源>
例如:pip install PyQt5 -i http://pypi.douban.com.simple

更多的有关pip的使用细节,大家可以上网自行查询。

1.3 使用pip安装第三方库
Python默认使用的是https://pypi.python.org/pypi中的Python库,通常从国内连接国外的服务器会导致超时,你可以设置成国内的PyPI镜像站点。比如豆瓣https://pypi.douban.com/simple,然后在命令行中添加PyPI镜像参数。可以使用如下命令从豆瓣下载最新的Python第三方库。

pip install Pillow -i https://pypi.douban.com/simple

1.4 pip参数解释
在命令行输入以下命令,将得到pip 参数的详细解释(默认是英文的,这里翻译成中文以便于读者理解)。

pip --help

结果如下:

Usage:   
pip<command> [options]

Commands:
  install                     安装包
  uninstall                   卸载包
  freeze                      按照一定格式输出已安装包列表
  list                        列出已安装包
  show                        显示包详细信息
  search                      搜索包,类似于yum中的search
  wheel                       根据需要生成wheel文件 
  download                   下载模块
  hash                        计算模块包的哈希数值
  help                        当前帮助信息

General Options:
  -h, --help                  显示帮助信息
  -v, --verbose               更多的输出,最多可以使用3  -V, --version               显示版本信息,然后退出
  -q, --quiet                 最少的输出
  --log-file <path>覆盖记录verbose错误日志,默认文件为:/root/.pip/pip.log
  --log <path>不覆盖记录verbose输出的日志
  --proxy <proxy>           以[user:password @] proxy.server:port的形式
  --retries <retries>        重试次数(默认为5次)
  --trusted-host <hostname>  可信任站点
  --timeout <sec>连接超时时间(默认为15秒)
  --exists-action <action>   路径已存在时的默认操作: (s)witch, (i)gnore, (w)ipe, (b)ackup
  --cert <path>证书
  --cache-dir<dir>           cache目录
  --isolated                  绝对模式,无视Python环境和用户设置
  --upgrade                 如果已安装就升级到最新版本

2 Python 代码缩进问题
一个Python脚本本来运行得很好,但是写了几行代码后,而且也确保每行都对齐了,运行时却出现如下语法错误:

IndentationError: unindent does not match any outer indentation level

这是什么原因导致的呢?
(1)对于此错误,最常见的原因是代码没有对齐。但是根据错误提示的行数,检查代码也没有发现问题,都是使用Tab键对齐的,没有不对齐的行数。
(2)把当前Python脚本的所有字符都显示出来,看看有没有特殊的字符。
打开文本编辑器Notepad++,单击“视图”→“显示符号”→“显示空格与制表符”,如图6所示。
这里写图片描述图6
可以看到,问题出现在第29行,源代码对齐使用的是空格键,和前面几行代码对齐使用的Tab键是不匹配的,即对齐代码时混用了Tab键和空格键,如图7所示。
这里写图片描述
图7
在Python语法中对齐代码是不支持混用Tab键和空格键的,所以出现了上述错误提示。解决方法是在第29行改为使用Tab键来对齐代码,修改后如图8所示。
这里写图片描述图8

3 获取应用图标
PyQt5应用使用的所有图标都是从easyicon网站下载的,easyicon的官方网址是:http://www.easyicon.net/,如图9所示。
这里写图片描述
图9
easyicon网站提供了超过50万个的PNG、ICO、ICNS格式的图标搜索、图标下载服务,可以免费使用。

猜你喜欢

转载自blog.csdn.net/Old_BigBrother/article/details/81478827