1 Python基础
1.1 运算符
// |
取整除 |
** |
幂运算 |
“*”*10 |
把 * 拼接10次 |
1.2 优先级
** |
幂 |
* 、/、%、// |
乘、除、取余、取整除 |
+、- |
加、减 |
1.3 变量类型
Python解释器自动推导变量的准确类型。
变量类型主要有:
- 数字型:int、float、bool、complex
- 非数字型:字符串、列表、元组、字典
使用type()函数可以查看类型。如
name = "xiaoming" type(name)
非数字型变量主要支持以下特点:
- 都是一个序列sequence,也理解为容器;
- 取值:[ ]
- 遍历:for … in …
- 计算长度、最大/最小值、比较、删除
- 链接和重复
- 切片
1.4 赋值运算符
+= |
c+=a >> c=c+a |
-= |
c-=a >> c=c-a |
*= |
c*=a >> c=c*a |
/= |
c/=a >> c=c/a |
//= |
c//=a >> c=c//a |
%= |
c%=a >> c=c%a |
**= |
c**=a >> c=c**a |
1.5 转义字符
在需要在字符中使用特殊字符时,用反斜杠()转义字符。如下表:
有时我们并不想让转义字符生效,我们只想显示字符串原来的意思,这就要用r和R来定义原始字符串。如:
print (r' ')
实际输出为:
1.6 赋值运算符
+= |
c+=a >> c=c+a |
-= |
c-=a >> c=c-a |
*= |
c*=a >> c=c*a |
/= |
c/=a >> c=c/a |
//= |
c//=a >> c=c//a |
%= |
c%=a >> c=c%a |
**= |
c**=a >> c=c**a |
2 程序结构
2.1 顺序结构
2.2 分支结构
1) if … else …
if 条件1 : …… elif 条件2 : …… else : ……
在python中,用缩进来表示程序块,后面的“ : ”一定要加。
2) 逻辑运算
与:条件1 and 条件2
或:条件1 or 条件2
非:not 条件
3) python中生成随机数
用import关键字
import random random.randint(a, b) #返回[a, b]之间的整数
2.3 循环结构
1) while 循环
while 条件 : 条件满足时所做的任务 ……
(缩进部分为完整的程序块)
2) break和continue
break:跳出当前循环
continue:结束当次循环,进入下一轮循环
3) for循环
for循环输出九九乘法表
for i in range(1, 10) for j in range(1, 10) print(“%d * %d = %d ” %(i, j, i*j ), end=“ ”) print(“ ”)
3 函数
1) 函数定义:
def 函数名() : 函数内容 ……
2) 函数参数:
def 函数名(参数1, 参数2, …… ) : 函数内容 ……
3) 函数返回值:
def 函数名(参数1, 参数2, …… ) : 函数内容 …… return ……
return后面的代码不会执行。
4 模块
- 每一个以.py结尾的python源代码文件都是一个模块
- 用import关键字导入模块
- 模块中的函数、全局变量都是模块能提供给外界直接使用的工具
4.1 import语句
模块定义好后,我们可以使用 import 语句来引入模块,语法如下:
import module1[, module2[,... moduleN]]
一个模块只会被导入一次,不管你执行了多少次import。这样可以防止导入模块被一遍又一遍地执行。
4.2 from…import语句
from 语句让你从模块中导入一个指定的部分到当前命名空间中。语法如下:
from modname import name1[, name2[, ... nameN]]
例如,要导入模块 fib 的 fibonacci 函数,使用如下语句:
from fib import fibonacci
这个声明不会把整个 fib 模块导入到当前的命名空间中,它只会将 fib 里的 fibonacci 单个引入到执行这个声明的模块的全局符号表。
4.3 from…import* 语句
把一个模块的所有内容全都导入到当前的命名空间也是可行的,只需使用如下声明:
from modname import *
这提供了一个简单的方法来导入一个模块中的所有项目。然而这种声明不该被过多地使用。
例如我们想一次性引入 math 模块中所有的东西,语句如下:
from math import *