Skip to content

Commit

Permalink
更新了前15天和最后10天的内容
Browse files Browse the repository at this point in the history
  • Loading branch information
jackfrued committed Apr 1, 2020
1 parent 3351f01 commit dbe5479
Show file tree
Hide file tree
Showing 13 changed files with 115 additions and 115 deletions.
41 changes: 17 additions & 24 deletions Day01-15/01.初识Python.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,33 +10,31 @@
4. 2000年10月16日:Python 2.0发布,增加了完整的[垃圾回收](https://zh.wikipedia.org/wiki/%E5%9E%83%E5%9C%BE%E5%9B%9E%E6%94%B6_(%E8%A8%88%E7%AE%97%E6%A9%9F%E7%A7%91%E5%AD%B8)),提供了对[Unicode](https://zh.wikipedia.org/wiki/Unicode)的支持。与此同时,Python的整个开发过程更加透明,社区对开发进度的影响逐渐扩大,生态圈开始慢慢形成。
5. 2008年12月3日:Python 3.0发布,它并不完全兼容之前的Python代码,不过因为目前还有不少公司在项目和运维中使用Python 2.x版本,所以Python 3.x的很多新特性后来也被移植到Python 2.6/2.7版本中。

目前我们使用的Python 3.7.x的版本是在2018年发布的,Python的版本号分为三段,形如A.B.C。其中A表示大版本号,一般当整体重写,或出现不向后兼容的改变时,增加A;B表示功能更新,出现新功能时增加B;C表示小的改动(例如:修复了某个Bug),只要有修改就增加C。如果对Python的历史感兴趣,可以阅读名为[《Python简史》](http:https://www.cnblogs.com/vamei/archive/2013/02/06/2892628.html)的博文
目前我们使用的Python 3.7.x的版本是在2018年发布的,Python的版本号分为三段,形如A.B.C。其中A表示大版本号,一般当整体重写,或出现不向后兼容的改变时,增加A;B表示功能更新,出现新功能时增加B;C表示小的改动(例如:修复了某个Bug),只要有修改就增加C。如果对Python的历史感兴趣,可以阅读名为[《Python简史》](http:https://www.cnblogs.com/vamei/archive/2013/02/06/2892628.html)的网络文章

#### Python的优缺点

Python的优点很多,简单的可以总结为以下几点。

1. 简单和明确,做一件事只有一种方法。
2. 学习曲线低,跟其他很多语言相比,Python更容易上手。
3. 开放源代码,拥有强大的社区和生态圈。
4. 解释型语言,天生具有平台可移植性。
5. 对两种主流的编程范式(面向对象编程和函数式编程)都提供了支持。
6. 可扩展性和可嵌入性,例如在Python中可以调用C/C++代码。
7. 代码规范程度高,可读性强,适合有代码洁癖和强迫症的人群。
1. 简单明了,学习曲线低,比很多编程语言都容易上手。
2. 开放源代码,拥有强大的社区和生态圈,尤其是在数据分析和机器学习领域。
3. 解释型语言,天生具有平台可移植性,代码可以工作于不同的操作系统。
4. 对两种主流的编程范式(面向对象编程和函数式编程)都提供了支持。
5. 代码规范程度高,可读性强,适合有代码洁癖和强迫症的人群。

Python的缺点主要集中在以下几点。

1. 执行效率稍低,因此计算密集型任务可以由C/C++编写。
1. 执行效率稍低,对执行效率要求高的部分可以由其他语言(如:C、C++)编写。
2. 代码无法加密,但是现在很多公司都不销售卖软件而是销售服务,这个问题会被弱化。
3. 在开发时可以选择的框架太多(如Web框架就有100多个),有选择的地方就有错误。

#### Python的应用领域

目前Python在Web应用开发、云基础设施、DevOps、网络数据采集(爬虫)、数据分析挖掘、机器学习等领域都有着广泛的应用,因此也产生了Web后端开发、数据接口开发、自动化运维、自动化测试、科学计算和可视化、数据分析、量化交易、机器人开发、自然语言处理、图像识别等一系列相关的职位
目前Python在Web应用后端开发、云基础设施建设、DevOps、网络数据采集(爬虫)、自动化测试、数据分析、机器学习等领域都有着广泛的应用

### 安装Python解释器

想要开始Python编程之旅,首先得在自己使用的计算机上安装Python解释器环境,下面将以安装官方的Python解释器为例,讲解如何在不同的操作系统上安装Python环境。官方的Python解释器是用C语言实现的,也是使用最为广泛的Python解释器,通常称之为CPython。除此之外,Python解释器还有Java语言实现的Jython、C#语言实现的IronPython以及PyPy、Brython、Pyston等版本,我们暂时不对这些内容进行介绍,有兴趣的读者可以自行了解。
想要开始Python编程之旅,首先得在自己使用的计算机上安装Python解释器环境,下面将以安装官方的Python解释器为例,讲解如何在不同的操作系统上安装Python环境。官方的Python解释器是用C语言实现的,也是使用最为广泛的Python解释器,通常称之为CPython。除此之外,Python解释器还有Java语言实现的Jython、C#语言实现的IronPython以及PyPy、Brython、Pyston等版本,有兴趣的读者可以自行了解。

#### Windows环境

Expand Down Expand Up @@ -104,13 +102,13 @@ macOS也自带了Python 2.x版本,可以通过[Python的官方网站](https://
```Shell
python --version
```
或者是在Linux或macOS系统的终端中键入下面的命令
在Linux或macOS系统的终端中键入下面的命令

```Shell
python3 --version
```

当然也可以先输入python或python3进入交互式环境,再执行以下的代码检查Python的版本。
当然也可以先输入`python``python3`进入交互式环境,再执行以下的代码检查Python的版本。

```Python
import sys
Expand Down Expand Up @@ -156,12 +154,8 @@ python3 hello.py
Version: 0.1
Author: 骆昊
"""

print('hello, world!')
# print("你好,世界!")
print('你好', '世界')
print('hello', 'world', sep=', ', end='!')
print('goodbye, world', end='!\n')
# print("你好, 世界!")
```

### Python开发工具
Expand All @@ -174,7 +168,7 @@ IDLE是安装Python环境时自带的集成开发工具,如下图所示。但

#### IPython - 更好的交互式编程工具

IPython是一种基于Python的交互式解释器。相较于原生的Python交互式环境,IPython提供了更为强大的编辑和交互功能。可以通过Python的包管理工具pip安装IPython和Jupyter,具体的操作如下所示。
IPython是一种基于Python的交互式解释器。相较于原生的Python交互式环境,IPython提供了更为强大的编辑和交互功能。可以通过Python的包管理工具pip安装IPython,具体的操作如下所示。

```Shell
pip install ipython
Expand Down Expand Up @@ -220,7 +214,7 @@ pip3 install ipython
- Python PEP8 Autoformat - PEP8规范自动格式化插件。
- ConvertToUTF8 - 将本地编码转换为UTF-8。

> 说明:事实上[Visual Studio Code](<https://code.visualstudio.com/>)可能是更好的选择,它不用花钱并提供了更为完整和强大的功能,有兴趣的读者可以自行研究。
> **说明**:事实上[Visual Studio Code](<https://code.visualstudio.com/>)可能是更好的选择,它不用花钱并提供了更为完整和强大的功能,有兴趣的读者可以自行研究。
#### PyCharm - Python开发神器

Expand All @@ -236,12 +230,11 @@ PyCharm的安装、配置和使用在[《玩转PyCharm》](../玩转PyCharm.md)
import this
```

> 说明:输入上面的代码,在Python的交互式环境中可以看到Tim Peter撰写的[“Python之禅”](../Python之禅.md),里面讲述的道理不仅仅适用于Python,也适用于其他编程语言。
>
> **说明**:输入上面的代码,在Python的交互式环境中可以看到Tim Peter撰写的[“Python之禅”](../Python之禅.md),里面讲述的道理不仅仅适用于Python,也适用于其他编程语言。
2. 学习使用turtle在屏幕上绘制图形。

> 说明:turtle是Python内置的一个非常有趣的模块,特别适合对计算机程序设计进行初体验的小伙伴,它最早是Logo语言的一部分,Logo语言是Wally Feurzig和Seymour Papert在1966发明的编程语言。
> **说明**:turtle是Python内置的一个非常有趣的模块,特别适合对计算机程序设计进行初体验的小伙伴,它最早是Logo语言的一部分,Logo语言是Wally Feurzig和Seymour Papert在1966发明的编程语言。
```Python
import turtle
Expand All @@ -260,4 +253,4 @@ PyCharm的安装、配置和使用在[《玩转PyCharm》](../玩转PyCharm.md)
turtle.mainloop()
```

> 提示:本章提供的代码中还有画国旗和画小猪佩奇的代码,有兴趣的读者请自行研究。
> **提示**:本章提供的代码中还有画国旗和画小猪佩奇的代码,有兴趣的读者请自行研究。
Loading

0 comments on commit dbe5479

Please sign in to comment.