1、Python简介
Python是一种解释型语言,不需要编译,它的作用就像人与机器间的对话翻译器。
所以,相比那些需要编译的语言(如C和C++),Python用起来更轻便。
你随时可以用一个文本编辑器打开代码修改,保存后就可以运行了。
C语言的”Hello World”
GIF图地址
Python的两种运行方式和写法
GIF图地址
Python代码有两种运行方式:
- 交互式:你打一句,它回一句。可以是在命令行,也可以是在NoteBook中。
- 脚本式:写好一个文本文件(
.py
结尾),在命令行中用python解释器执行。
在学习过程中,可以开启NoteBook模式,这样可以更方便观察学习。
Jupyter NoteBook的安装使用在下面VSCode部分讲。
写好的Python脚本,可以在任何有Python的电脑上运行。
比如,你用脚本帮谁谁解决了一个问题,把脚本发给他运行即可。
但是要注意一些绝对路径,因为你电脑上的文件夹和他的不一样。
2、Python安装
在安装Python之前,我们得选一个版本。
Python最主流的发型版是CPython,可以直接从官网下载。
你可能听说过Anaconda,它是专门为数据科学量身定制的Python发行版。在学习之初,我更建议你用官方版本,因为语言学习并不需要那么多额外功能,够用就好。
官方版本一般会以“Python X.Y.Z
”命名,X.Y.Z是版本号,
- X:代表主版本,目前只有2和3,2已停止维护;
- Y:代表大版本,比如较大更新,增加了新语法和特性;
- Z:代表维护更新,如大版本的一些Bug补丁。
选择版本的技巧:别太古老(功能少),不用最新(有Bug)。
推荐采用“Python 3.7”,目前小版本是3.7.8,下载安装包。
补充说明:
- Windows安装过程中,记得勾选“
Add Python 3.7.8 to PATH
”,这样就不用单独配置“环境变量”了。 - MacOS按官方pkg文件的安装引导即可。也可以通过HomeBrew安装,这是一个通过命令行安装软件的工具。
安装完成后,打开终端,
- Windows指CMD命令行,可以在开始中搜“CMD”获得
- MacOS指Terminal,可以搜索“terminal”获得,更推荐安装iTerm2这款命令行软件。
打开命令行后,输入指令“python”:
- 如果Windows上提示找不到python命令,则说明python还没被配置到环境变量中。
- 如果看到“>>>”这个提示符,说明安装成功,已进入交互式环境中。
可以输入第一行代码,测试下是否运行正常。
print('hello world')
3、pip安装第三方模块
Python除了入门方便,代码可读性高,还有一个比较大的优势,就是它有海量的第三方模块库。一般高级语言都有第三方模块库,这样可以大大提高代码的可维护性,同时可以被更多复用。
任何一门被广泛传播的语言,少不了一个繁荣的应用生态。 —— 程一初
比如,张三写了个模块,李四可以直接引入后使用,很方便。当李四的应用超出了张三所写模块的能力范围,他可以选择为该模块添砖加瓦,促进更多人参与协同。
Python发展了几十年,全世界优秀的程序员都在用它开发各种模块。比如,
- 读取Office等各类文件格式的模块
- 连接各种常见数据库的模块
- 科学计算和数据分析的模块
- 简单爬虫和分布式爬虫的模块
- Web网络应用开发框架的模块
- 人工智能和机器学习的模块
- ……
Python三方模块之丰富,几乎涵盖了你能想到的一切应用场景。
这里我们先不讲怎样自定义模块,先讲如何安装使用第三方模块。
Python安装第三方模块也很简单,只要通过一个命令即可:
pip install requests # 安装单个模块
pip install requests Pillow # 安装多个模块用空格分离
如果提示类似下面的内容,即需要更新pip
本身,按提示执行命令即可。
WARNING: You are using pip version 19.2.3, however version 20.1.1 is available. You should consider upgrading via the ‘pip install —upgrade pip’ command.
pip install --upgrade pip
模块使用起来也很方面,我们只需要在代码中用import
引入,比如:
import requests # 引入模块
r = requests.get('http://www.baidu.com') # 调用模块功能
print(r.status_code) # 输出结果
我们也可以把安装过的三方模块,以及具体版本信息导出,比如共享给其他人。
也只需要一个命令:
pip freeze > requirements.txt # 导出三方模块及版本信息
pip install -r requirements.txt # 从别人导出的模块信息中一键安装
模块之间也会有互相引用,这就是所谓的“依赖关系”。
我要用模块A,模块A会用到模块B和C,模块B和C会用到……
pip
的工作原理很简单,它会帮你解决这个“依赖关系”,把所有需要安装的模块从网络下载并安装。
但因为pip
所下载的模块放在国外的服务器上,所以有时候会比较慢。
所幸国内不少组织都建立了“镜像源”,也就是把模块都同步拷贝到了国内数据中心。比如清华、豆瓣、阿里、中科大等。
- 清华:https://pypi.tuna.tsinghua.edu.cn/simple
- 豆瓣:http://pypi.douban.com/simple
- 阿里:http://mirrors.aliyun.com/pypi/simple/
- 中科大:https://pypi.mirrors.ustc.edu.cn/simple/
如果是单次使用,可以通过添加参数指定:
pip -i http://pypi.douban.com/simple requests
建议把镜像源改为全局配置,从pip的第10版本开始可以直接通过命令修改:
pip config set global.index-url http://pypi.douban.com/simple
接下来你安装三方软件包,就会快得飞起。
4、VSCode安装和配置
VSCode
是目前最流行的IDE,除了可以开发Python应用程序,前端开发也适用,还可以用Markdown写作等其他场景。
事实上,根据 Stackoverflow(著名全球开发者论坛)2019 年调查结果,它是目前最流行的 IDE。
2019 年 10 月,微软发布了全新 VS Code Python 插件,开始原生支持 Jupyter Notebook,就是上面我说的Python交互式环境网页版。很多教程会挑选PyCharm,但我认为,不管是现在还是未来,VSCode会成为主流。
4.1 VSCode下载安装
VSCode的安装并不复杂,根据 官网下载 并安装即可。
安装完VSCode,我们还需要安装Python插件。
4.2 安装Python插件
使用快捷键 Ctrl+Shift+P
(Mac下Ctrl改为Command键,下同)调出 Command Palette,然后输入 Extensions: Install Extensions
(也可以直接输入Install
,会给出提示列表),进入扩展安装界面。
输入python
查找,第一个就是,开发者为Microsoft。
请记下 Ctrl+Shift+P
这个快捷键,因为你会发现,Chrome浏览器的开发者面板(按 F12
调出)里,也可以用同样的快捷键,调用命令。
比如在Chrome开发面板中,按下快捷键,再输入Capture full size screenshot
的前几个字母,就能一个命令保存整个网页截图。
其实,Chrome的开发面板与VSCode都用了同样的底层架构:Electron(基于NodeJS和Chromium),在其官网上还可以找到大量基于它的应用。这也就意味着:只要你熟悉了VSCode的操作,也就同时掌握了大批其他软件的基本操作。
比如,未来有可能你都不用装VSCode,直接在线使用即可,比如Github推出的Codespaces,就是一个在线VSCode。
4.3 切换Python版本
新建或打开Python文件后,可以点击下方状态条里的版本,就可以切换系统内的Python版本。
一般这时候你只有一个版本,但如果使用pyenv或conda安装了多个版本,就可以切换。
4.4 代码运行
目前VSCode Python插件已在文件右上方提供绿色执行按钮,点击即可执行。
4.5代码调试
通过按F5键
后选择“Python File”开始调试。
调试中,我们可以一步步执行,观察左边的变量数值变化。
5、Juypter Notebook使用
5.1 创建和打开Notebook
当安装好 Python 插件最新版后,使用快捷键 Ctrl+Shift+P
调出 Command Palette,然后输入 Python: Create New Blank Jupyter Notebook
,就能创建一个新的 Jupyter Notebook。
如果你已经有一个 Jupyter Notebook 文件了,你可以在 VS Code 中双击打开这个文件,或者在 Command Palette 里通过 Python: Open in Notebook Editor
打开。
VS Code 的 Jupyter Notebook Editor 使得开发者可以轻松地创建、编辑和运行 code cells。cell
是Jupyter Notebook中的执行单元,你可以在里面写代码,也可以写Markdown文本。
5.2 创建 code cells
添加额外的 code cells
5.3 运行 code cell
单个cell运行:
运行多个 code cells
5.4 移动 code cell
5.5 删除 code cell
5.6 在代码与 markdown 之间切换
markdown是一种标记语言,可以用来写文章,方便在练习代码时做笔记。
当cell从代码转为markdown后,它就不会被当作代码执行。
5.7 查看导出数据图表
通过图表查看器,轻松查看输出的图表,放大缩小极为简便,还能导出为 PDF、SVG 或者 PNG 格式的文件。
5.8 查看变量数据
在 VS Code 中,可以通过变量查看器实时地查看变量的类型、数量与值。还可以通过数据查看器浏览更具体的数据。
查看具体数据需要提前安装pandas模块,没有安装的话右下角会有提示弹出,点击Install即可安装。
作者:程一初
更新时间:2020年8月