[关闭]
@Cleland 2020-02-17T12:25:04.000000Z 字数 3718 阅读 1754

Day 1:Python 两大特性和四大基本语法

Python 零基础 语法


Python 语言使用率越来越高,使用 Python 不仅可以做 GUI 开发, Web 开发,还能进行数据预处理,数据探索性分析(EDA),更是进行数据挖掘、机器学习和深度学习等的首选语言。

基于 Python 的包更是枝繁叶茂,遍地开花,tiobe 编程语言排行榜最新统计显示 Python 是增长最快的语言。

image-20200131192231967

这得益于 Python 语言语法简单,开发效率高,集成系统非常方便。

Python 相关的就业机会也是非常多,待遇也很优厚。

因此,不管从易用性,还是工作机会和待遇来说,Python 都是 IT 从业者需要掌握的语言。

接下来,与大家,还有远在美国做 AI 博士后研究的 Alicia,一起开始我们的 60 天 Python 探索之旅吧。

开始前,先了解下这个专栏的基本使用说明,主要包括如下几点:

所有的这些考虑,都是为了让大家在短时间内掌握 Python 技术栈,多一个生存的本领。拿到理想的 offer 后, 早日过上自己想要的生活。

让我们开始吧。

首先问大家一个问题,你知道Python是一门什么样的语言吗?

Python 语言两大特性

Python 是一门动态的、强类型语言。

什么是动态语言?

要了解什么是动态语言,要首先了解类型检查。类型检查是验证类型约束的过程,编译器或解释器通常在编译阶段或运行阶段做类型检查。

类型检查就是查看变量和它们的类型,然后判断表达式是否合理。例如,不能拿一个string类型变量除以浮点数变量。

如果类型检查发生在程序运行阶段(run time),那么它便是动态类型语言(dynamically typed languages). 常见的动态语言包括:

类型检查发生在编译阶段(compile time)的是静态类型语言(statically typed languages). 常见的静态类型语言包括:

什么是强类型语言?

强类型语言是指:不管是在编译阶段还是运行阶段,一旦某种类型绑定到变量后,此变量便会持有此类型,并且不能同其他类型在计算表达式时,混合使用。

例如,在交互式工具IPython中输入如下两行代码:

  1. In [1]: a = 5
  2. In [2]: a = a + 's'

程序会抛出TypeError异常: unsupported operand type(s) for +: 'int' and 'str', 意思是不支持 int变量和 str变量相加。

常见的强类型语言有:

与之对应的是弱类型语言,弱类型语言容易与其他类型混合计算。弱类型语言代表 Javascript.

支持如下操作:

  1. var data = 5
  2. data = data + 'xiaoming' //string和int结合自动转化为string

常见的弱类型语言有:

如下,按照是否为静态/动态语言,弱类型/强类型两个维度,总结常用的语言分类。

image-20200205155429583

四大基本语法

分别从变量命名规则、缩进原则、特殊关键字和特殊运算符四个方面,总结 Python 的基本语法。

命名规则

Python 的变量命名规则主要包括两条:

特别说明以下划线开头的变量是有特殊意义的:

Python 变量命名习惯一般遵守蛇形命名法(snake case):

这与Java命名方法不同,Java最典型的命名方法:驼峰命名法(camel case).

缩进原则

python 最具特色的地方就是用缩进代替Java, C++中的{},缩进的层级结构表示代码的逻辑层次。

比如,自定义一个Book类,重写__add__方法计算两类书的库存量和。

Python 的缩进方法,一般为 4 个字符。

代码行class Book(object) 与代码行# 定义类的参数的缩进,此处为 4 个字符;

代码行def __add__(self,book):return所在行缩进也是4个字符;

通过这种层级结构展现出代码的逻辑层次。

  1. class Book(object):
  2. # 定义类的参数
  3. def __init__(self,book_id, book_name, book_store_count):
  4. self.book_id = book_id
  5. self.book_name = book_name
  6. self.book_store_count = book_store_count
  7. # 重写加法操作
  8. def __add__(self,book):
  9. return self.book_store_count + book.book_store_count
  10. store_count = Book(1,'python入门书',100) + Book(2,'机器学习入门书',200)
  11. print(store_count) # 300

缩进格式,行间空行数,变量和等号空格等 Python编码规范参考PEP8.

autopep8包遵循PEP8的所有规范,安装此包,做好相关配置,便可自动实现PEP8制定的编码规范。

特殊关键字

Python 有 35 个关键字:

  1. False await else import pass
  2. None break except in raise
  3. True class finally is return
  4. and continue for lambda try
  5. as def from nonlocal while
  6. assert del global not with
  7. async elif if or yield

自定义变量名不能与它们重复。

常用且不同于其他常用语言 c++和 Java的关键字,如:

其他比较特殊的关键字,如:

这些关键字的用法,会在后续文章,更为详细的介绍。在此,先构建一个整体上的认识,即可。

特殊运算符

Python 的运算符包括:

  1. + - * ** / // % @
  2. << >> & | ^ ~ :=
  3. < > <= >= == !=

大部分运算符应该被熟知,重点介绍 3 个比较特殊的://, **, :=

  1. In [1]: 5//2
  2. Out[1]: 2
  3. In [2]: 5//4.5
  4. Out[2]: 1.0
  1. In [1]: 2**3
  2. Out[1]: 8
  1. n = len(a)
  2. if n > 10:
  3. print(f"{n}大于10")

如果使用海象运算符,写法上更为精简:

  1. if (n := len(a)) > 10:
  2. print(f"{n}大于10")
  1. i = 3
  2. print(1 < i < 3) # False
  3. print(1 < i <= 3) # True

小结

Python 学习第一天,首先认识 Python 两大特征:

四大基本语法,总结了 Python 的命名规则,缩进原则,特殊关键字,特殊运算符,为后面的学习打下基础。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注