Python3简明教程(一)
开始python之旅
- 使用交互模式的 Python3解释器
- 简单使用 vim 编写 Python3 脚本
- 执行 Python3 脚本
- Python3 代码风格建议
- Python3 中使用注释
遇到的问题:
在 Python 中,空格很重要,我们使用空格将标识符区分开,行开始处的空格我们称之为缩进,如果你的缩进是错误的,Python 解释器会抛出错误。例如下面情形:
如果你在代码中混用制表符和空格,这种缩进错误会很常见。
所以如果是用空格,就一直用空格缩进,不要使用制表符。
建议遵守以下约定:
- 使用 4 个空格来缩进
- 永远不要混用空格和制表符
- 在函数之间空一行
- 在类之间空两行
- 字典,列表,元组以及参数列表中,在 , 后添加一个空格。对于字典,: 后面也添加一个空格
- 在赋值运算符和比较运算符周围要有空格(参数列表中除外),但是括号里侧不加空格:a = f(1, 2) + g(3, 4)
变量和数据类型
- python 关键字
- 变量的定义与赋值
- input() 函数
- 字符串的格式化
实践
1.Year {} Rs. {:.2f}".format(year, value) 称为字符串格式化,大括号和其中的字符会被替换成传入 str.format() 的参数,也即 year 和 value。其中 {:.2f} 的意思是替换为 2 位精度的浮点数。
2.用逗号创建元组。在赋值语句的右边我们创建了一个元组,我们称这为元组封装(tuple packing),赋值语句的左边我们则做的是元组拆封 (tuple unpacking)。
运算符和表达式
- 关系/逻辑运算
- 表达式
- 类型转换
实践:
Operator | Meaning |
---|---|
< | Is less than |
<= | Is less than or equal to |
|Is greater than
=| Is greater than or equal to
==|Is equal to
!=|Is not equal to
挑战:圆的面积
实践:
循环
- while 循环
- print() 函数的 end 参数
- 列表
-
- 索引
-
- 切片
- for 循环
- range() 函数
- continue 关键字
- for 循环中的 else 关键字
实践:
1.斐波那契数列
默认情况下,print() 除了打印你提供的字符串之外,还会打印一个换行符,所以每调用一次 print() 就会换一次行,如同上面一样。可以用end替换这个默认的换行符。Python 中赋值语句执行时会先对赋值运算符右边的表达式求值,然后将这个值赋值给左边的变量。
理解:
第一轮:a=0,b=1,输出1
第二轮:a=1,b=2,输出1
第三轮:a=2,b=3,输出2
第四轮:a=3,b=5,输出3
···
数据结构
- 列表的方法与列表元素的删除
- 将列表用作栈和队列
- 列表推导式
- 元组、集合、字典的创建与操作
- enumerate() 和 zip() 函数
字符串
- 字符串的3种表示
- 字符串的分割、连接、大小写转换、搜索等常用操作
函数
- 函数的定义
- 局域/全局变量的概念
- 默认参数,关键字参数及强制关键字参数
- 文档字符串的使用
- 高阶函数,map() 函数
1.函数的形参和函数的实参,了解函数运行机制
2.局部变量:分清楚变量的作用域
3.global语句被用来声明x是全局的——因此,当我们在函数内把值赋给x的时候,这个变化也反映在我们 在主块中使用x的值的时候。
4.关键参数
:如果你的某个函数有许多参数,而你只想指定其中的一部分,那么你可以通过命名来为这些参数赋值—— 这被称作 关键参数 ——我们使用名字(关键字)而不是位置(我们前面所一直使用的方法)来给函数指定 实参。 这样做有两个 优势 ——一,由于我们不必担心参数的顺序,使用函数变得更加简单了。二、假设其他参数 都有默认值,我们可以只给我们想要的那些参数赋值。
文件处理
- 文件打开模式
- 文件读取与写入
- with 语句
- lscpu 命令的实现
异常
- NameError
- TypeError
- 异常处理(try..except)
- 异常抛出(raise)
- finally 子句