第一阶段
第二章、基础语法
一、字面量
1、数字(number)
- 整数(int) 如10,-10
- 浮点数(float) 如1.11
- 复数(complex) 如1+2j
- 布尔(bool) 本质上True记作1,False记作0
2、字符串(string)
- 由任意数量的字符组成
3、列表(list)
- 有序可变序列
- 有序记录一堆数据
4、元组(tuple)
- 记录不可变的数据集合
5、集合(set)
- 无序不重复集合、
6、字典(dictionary)
- 记录一堆Key-Value型的python数据集合
二、注释
1、单行注释
- #号开头加空格
2、多行注释
- 三对引号引起来
三、变量
1、定义
- 在程序运行时,能储存计算结果或能表示值的抽象概念
- 变量名称 = 变量的值
四、数据类型及其转换
1、查看数据类型
- 使用type()语句
2、数据的转换
- 转为整数
int(x)
- 转为浮点数
float(x)
- 转为字符串
str(x)
- 大多数类型都可转为字符串,但字符串不全能转为其它类型
- 浮点数转整数则会丢失精度
五、标识符
1、定义
- 变量的名字
- 方法的名字
- 类的名字
2、规则
- 只允许出现英文、中文、数字及下划线
- 不可以数字开头
- 大小写敏感
- 不可使用关键字
六、运算符
1、算数运算符
- 加(+)减(-)乘(*)除(/)
- 整除(//)
- 取余(%)
- 指数(**)
2、赋值运算符(=)
3、复合赋值运算符
- a+=b等同于a=a+b
- -=、*=、/=、%=、**=、//=同理
字符串
1、扩展
- 1、单引号定义法(’ ')
- 2、双引号定义法(" ")
- 3、三引号定义法(“”" “”")
- 单引号定义法与双引号定义法可相互内含
- 可以用\来使引号变为普通字符串
2、拼接
- 通过+来实现,如
"abc"+"fed"
- 字面量与变量,变量与变量也可相互拼接
3、格式化
- 用%占位,如
name = "abc %d" % 111
- 多项占位时要注意顺序
- 精度:用
m.n%f
其中m为宽度(要大于数据本身宽度),n为小数点精度,有四舍五入 - 快速写法:
f"内容{变量}"
- 快速写法不理会类型,不做精度控制
- 对表达式格式化,即在{}内直接写入表达式
4、数据输入
input()
- 使用变量接收
第三章、判断语句
一、布尔类型和比较运算符
1、布尔类型
- True表示真,False表示假
2、比较运算符
- ==判断是否相等
- !=判断是否不相等
-
判断是否大于
- <判断是否小于
-
=与<=同理
二、if语句及其扩展
1、语法
if 条件:
条件成立时,要做的事情
2、if else语句
if 条件1:
条件1成立时要做的
else:
条件1不满足时要做的
3、if-elif-else语句
if 条件1:
条件1成立时要做的
elif 条件2:
条件2成立时要做的
elif 条件2:
条件2成立时要做的
……
else:
所有条件都不满足时要做的
三、判断语句的嵌套
1、语法
if 条件1:
条件1成立时要做的
if 条件2:
条件成立时要做的
………
2、可以与elif嵌套,也可加else
第四章、循环语句
while循环语句
1、语法
while 条件:
条件成立时要做的
条件成立时要做的
…………
2、注意事项
- 条件需要提供布尔类型的结果
3、嵌套语句的应用
while 条件1:
条件1成立时要做的
while 条件2:
条件2成立时要做的
…………
for循环语句
1、语法
for 临时变量 in 待处理的数据集:
循环满足条件时执行的代码
2、range语句
range(num)
- 从0开始,不含num本身
range(num1,num2)
- 从num1开始,不含num2
range(num1,num2,step)
- step即步长(默认为1)
3、临时变量作用域
- 临时变量在规范上只限定于循环内部
- 实际上可以在循环外部访问,但不允许
4、for循环的嵌套
- 于while嵌套相似
continue与break
1、continue
- 中断本次循环,直接进入下一次循环
- 在for与while中作用相同
2、break
- 直接结束循环
- 在for与while中作用相同
第五章、函数
一、函数的定义
函数是组织好的,可重复使用的,用来实现特定功能的代码段
1、语法
def 函数名(传入参数):
函数体
return 返回值
2、调用
函数名(参数)
3、先定义后调用
4、注意事项
- 参数与返回值都可省略
二、传入参数
1、传入参数的功能
在函数进行计算时,接受外部提供的数据
比如
def add(x,y):
result = x + y
print(f("{result}")
2、特点
- 可以不使用参数
- 可以仅使用任意n个参数
三、返回值定义语法
返回值就是程序中函数完成运算后,最后给调用者的结果
1、定义
- return 返回值
- 用变量来接受,
变量 = 函数(参数)
2、注意事项
- 函数体遇到return就结束了
3、None类型
- 无返回值类型的函数
- 不写return等同于
return None
- 类型为NoneType
四、函数说明文档
1、语法
- 在函数体内打出三引号
- 会自动打出对各变量的说明
2、说明
- 只是对函数进行注释,不参与运算
五、函数的嵌套调用
在一个函数里面又调用了另一个函数
比如
def func_b():
print()
def func_a():
print()
func_b()
print()
六、函数变量的作用域
1、局部变量
- 在函数体内部,临时保存数据,当函数调用完成后,则销毁局部变量
- 只在函数体内部生效
- 不可在函数外部调用
2、全局变量
- 在函数体内部外部都能生效
3、global关键字
- 在函数内部修改全局变量的值
- 在函数体内
global 全局变量
之后再对全局变量进行修改
第六章、数据容器
一、列表(List):
1、定义
- [元素1,元素2,……]
- 变量名称 = [元素1,元素2,……]
- 空列表:变量名称 = []
- 或变量名 = list()
- 嵌套[[元素1,元素2,……],[元素3,元素4,……],……]
2、下标索引
- 正向从0开始,反向从-1开始
- 二维列表:list[1] [1]
3、查询元素下标
- 语法:
列表.index(元素)
4、修改特定位置的元素值
- 语法:
列表[下标] = 值
5、插入元素
- 语法:
列表.insert(下标,元素)
- 下标就是元素插入后所对应位置的下标
6、追加元素
- 语法1:
列表.append(元素)
- 追加到列表的尾部
- 语法2:
列表.extend(其它数据容器)
- 将其他数据容器的内容取出,依次追加到列表尾部
7、删除元素
- 语法1:
del 列表[下标]
- 语法2:
列表.pop(下标)
- 可以把删掉的元素用其他变量接收
- 语法3:
列表.remove(元素)
- 删除某个元素在列表中的第一个匹配项,只会删除一个
- 清空列表:
列表.clear()
8、统计某元素
- 语法:
列表.count(元素)
9、统计列表内总共多少元素
- 语法:
len(列表)
10、列表特点
- 可以容纳多个元素,上限为2^63-1个
- 可以容纳不同类型的元素
- 数据是有序存储的
- 允许数据重复存在
- 可以修改
二、元组(Tuple):
1、特点
- 不可修改
- 可以修改元组内列表的内容(嵌套)
2、语法
- 字面量:(元素,元素,……)
- 元组变量:变量名 = (元素,元素,……)
- 空元组:变量名 = (),变量名 = tuple()
- 定义一个单个元素的元组:(元素, )
3、元组的嵌套
- 如
t=((1,2,3),(4,5,6))
4、下标索引
t1[数字]
- 嵌套索引
t=[1][2]
5、查找下标,
- 查找:
t.index()
6、遍历
while for
index=0 for i in t:
while index < len(t): print ()
print()
index += 1
三、字符串(String)
1、下标索引
- str[数字]
2、不可修改
3、index查找下标
str = index.()
4、字符串的替换
- str.replace(“被替换的元素”,“替换之后的元素”)
- 新的字符串接收
5、分割
- str.spilt(“分隔字符串”)
- 如
str = "hello world"
- 按照空格分割则分割后存入列表中
list = ["hello","world"]
6、规整
str.strip()
- 就是去掉字符串中前后指定的字符
7、统计某一元素数量,统计字符串长度
- 统计:
str.count()
- 长度:
len(str)
8、遍历
- 同元组
四、序列
1、列表、元组、字符串均可视为序列
2、序列的切片
- 序列[起始下标:结束下标:步长]
- 起始下标与结束下标大小按需求
- 可从前往后也可从后往前
- 从后往前取则将步长设为负数
- 不包含结束下标所对应元素
- 步长:
- 为n时,则跳过n-1个元素依次取
- 可以这样写:
result = str[::][::]……
- 先做第一个中括号再做第二个中括号的操作以此类推
五、集合
1、主要特点:不支持重复元素,内容无序,不支持下标索引
2、定义语法
- {元素,元素,……}
- 变量名 = {元素,元素……}
- 空集合:变量名 = set()
3、添加新元素
set.add()
4、移除
set.remove()
5、随机取出一个元素
set.pop()
- 需要被接收
6、清空集合
set.clear()
7、取两个集合的差集
set1.difference(set2)
- 接收结果要用其他集合
- 取出集合1有而集合2没有的
8、消除两个集合的差集
set1.difference_update(set2)
- 在集合1内,删除与集合2相同的元素
9、合并集合
set1.union(set2)
- 得到了一个新的集合,集合1、集合2不变
10、统计集合元素数量
num = len(set)
11、遍历(不可用while,可以用for)
set = {1,2,3,4,5}
for element in set:
print(f"{element}")
第二阶段
第一章
一、对象
1、设计一个类
class student:
name=None
gender=None
…………
class即为类
2、创建一个对象
stu_1=student()
3、对对象属性进行赋值
stu_1.name = " "
stu_1.gender = " "
…………
4、获取对象中记录的信息
- 通过print打印
###二、类的成员方法
1、类的定义和使用
使用语法
class 类名称:
类的属性
类的行为
创建类对象的语法
对象=类名称()
2、类的行为
-
可以定义属性来进行赋值
stu_1.name = " "
,记录的属性称为成员变量 -
也可以定义函数记录行为
stu_1.函数名()
,记录的行为称为成员方法
3、成员方法的定义语法
def 方法名(self,形参1,……,形参n):
方法体
- 必须有一个self关键字
- 表示类对象自身的意思
- 使用类对象的调用方法时,self会自动被python传入
- 在方法内部,想要访问类的成员变量,必须使用self
如
def 函数名(self):
print(f"{self.name}")
- 注意事项:self关键字尽管在参数列表中,但是传参是可以忽略它,即
stu.函数名()
###三、类和对象
1、基于类创建对象
对象名 = 类名称()
2、使用对象来完成具体的工作
3、类和对象的关系
- 类是“设计图纸”
- 对象是具体实体