推荐图书:
《Python程序设计(第3版)》,(ISBN:978-7-302-55083-9),董付国,清华大学出版社,2020年6月第1次印刷,2021年1月第6次印刷 京东购买链接: https://item.jd.com/12668739.html 天猫、当当均有销售,可以选择自己常用平台搜索“董付国 第3版”找到本书。 配套资源: 教学大纲、电子教案、微课视频、PPT课件、例题源码、习题答案、考试系统。 《Python程序设计(第3版)》配套教学大纲 《Python程序设计(第3版)》课后习题答案=======================
1 基本概念 包、库、模块是Python中常用的概念。一般来说,模块指一个包含若干函数定义、类定义或常量的Python源程序文件,库或包指包含若干模块并且其中一个文件名为__init__.py的文件夹。对于包含完整功能代码的单个模块,叫作库也可以,例如标准库re和re模块这两种说法都可以。但一般不把库叫作模块,例如tkinter库包含若干模块文件,此时一般说标准库tkinter而不说tkinter模块。 在Python中,有内置模块、标准库和扩展库之分。内置模块和标准库是Python官方的标准安装包自带的,内置模块没有对应的文件,可以认为是封装在Python解释器主程序中的;标准库有对应的Python程序文件,这些文件在Python安装路径中的Lib文件夹中。如图1中1、2、3所示。pip命令示例 | 说明 |
pip freeze | 列出已安装模块及其版本号 |
pip install SomePackage[==version] | 在线安装SomePackage模块,可以指定扩展库版本,如果不指定则默认安装最新版本,使用时把SomePackage替换为实际的扩展名名称,例如jieba、pillow、pypinyin |
pip install SomePackage.whl | 通过whl文件离线安装扩展库 |
pip install --upgrade SomePackage | 升级SomePackage模块到最新版本 |
pip uninstall SomePackage | 卸载SomePackage模块 |
pip install psutil-5.6.7-cp38-cp38-win_amd64.whl
在PowerShell环境中,如果要执行当前目录下的程序,需要在前面加一个圆点和一个斜线,例如在Python安装路径中Scripts文件夹中执行上面的命令需要改成下面的格式:./pip install psutil-5.6.7-cp38-cp38-win_amd64.whl
如果由于网速问题导致在线安装速度过慢的话,pip命令支持指定国内的站点来提高速度,下面的命令用来从阿里云服务器下载安装扩展库jieba,其他服务器地址可以自行查阅。pip install jieba -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com
如果固定使用阿里云服务器镜像,可以在当前登录用户的AppData\Roaming文件夹中创建文件夹pip,在pip文件夹中创建文件pip.ini,输入下面的内容,以后再执行pip命令安装和升级扩展库时就不用每次都指定服务器地址了。[global]
index-url = http://mirrors.aliyun.com/pypi/simple
[install]
trusted-host = mirrors.aliyun.com
如果遇到类似于“拒绝访问”的出错提示,可以使用管理员权限启动命令提示符,或者在执行pip命令时在最后增加选项“--user”。 (2)安装路径带来的问题 很多初学者会遇到这样的问题:使用pip安装扩展库时明明提示安装成功,使用pip list或pip freeze查看扩展库清单里也有,但在Python开发环境中却一直提示不存在。这样的问题基本上可以肯定是安装路径和使用路径不一致造成的。 注意,如果计算机上安装了多个版本的Python开发环境,在一个版本下安装的扩展库无法在另一个版本中使用。为了避免因为路径问题带来困扰,强烈建议在命令提示符或PowerShell环境切换至相应版本Python安装目录的scripts文件夹中,然后执行pip命令,如果要离线安装扩展库的话,最好也把.whl文件下载到相应版本的scripts文件夹中。简单地说,想在哪个版本的Python中使用扩展库,就到哪个版本的Python安装路径中的Scripts子文件夹中安装扩展库,这样可以最大程度地减少错误。 (3)扩展库自身bug或版本冲突问题 虽然现在这种情况已经越来越少遇到了,但确实还会偶尔发生。不管是多牛的程序员,写出来的代码都有可能会存在bug,这是正常的,Python也不例外。某些扩展库在升级过程中解决原来问题的同时又引入了新的错误,导致某些功能在旧版本中工作正常但在新版本中却无法使用。如果遇到类似的情况,可以查一下扩展库的官方网站的最新消息,或者暂时还原较低的版本,如果水平足够的话也可以自己修改一下扩展库的代码再使用。 编写Python程序时,尤其是使用了扩展库的程序,还可能会遇到的一种情况是,升级扩展库以后原来的程序无法运行了,提示某些属性或方法不存在。这是因为新版本扩展库不再支持原来的用法,这时需要查一下这个扩展库官方网站的更新历史,找到最新的用法然后修改自己的代码。 温馨提示: 关注微信公众号“Python小屋” ,在公众号后台发送消息“ 大事记 ”可以查看董付国老师与Python有关的重要事件;发送消息“ 教材 ”可以查看董付国老师出版的Python系列教材(已累计印刷超过115次)的适用专业详情;发送消息“ 历史文章 ”可以查看董付国老师推送的超过1000篇原创技术文章;发送消息“ 会议 ”或“ 培训 ”可以查看近期董付国老师的培训安排;发送消息“ 微课 ”可以查看董付国老师免费分享的超过500节Python微课视频;发送消息“ 课件 ”可以查看董付国老师免费分享的Python教学资源;发送消息“ 小屋刷题 ”可以下载“Python小屋刷题神器”,免费练习1318道客观题和176道编程题,题库持续更新;发送消息“ 编程比赛 ”了解Python小屋编程大赛详情。