目录
一、初入
二、变量和字符串
三、运算符
四、数字类型
五、布尔类型
六、分支和循坏
七、列表
八、元组
九、字符串
十、序列
十一、字典
十二、集合
十三、函数
一、初入
1.python内置函数:print实现输出:
2.input实现接受用户输入的数据:
3.查看到python的所有内置函数:
dir(__builtins__)
二、变量和字符串
1.变量名通常由数字、字母和下划线构成,但不能以数字开头。中文字符可以当变量名。
2.字符串的输出:
3.转义字符:
符号 | 说明 |
\\ | 反斜杠(\) |
\' | 单引号(') |
\'' | 双引号('') |
\a | 响铃(BEL) |
\b | 退格符(BS) |
\n | 换行符(LF) |
\t | 水平制表符(TAB) |
\v | 垂直制表符(VT) |
\r | 回车符(CR) |
\f | 换页符(FF) |
\ooo | ooo为八进制数 |
\xhh | hh为十六进制数 |
4.在字符串后面加反斜杠,代表还没写完,可以实现换行。
为了不在每一行后面都加反斜杠,可以使用三个双引号代替。
5.原始字符串:在字符串前面加r,所有的转移将失效。
三、运算符
1.含义:
运算符 | 含义 |
< | 判断左边是否小于右边 |
<= | 判断左边是否小于或等于右边 |
> | 判断左边是否大于右边 |
>= | 判断左边是否大于或等于右边 |
== | 判断左右两边是否相等 |
!= | 判断左右两边是否不相等 |
is | 判断两个对象的id是否相等 |
is not | 判断两个对象的id是否不相等 |
四、数字类型
1.浮点数在python的存储
2.decimal精准用法:
3.复数:
4.运算:
五、布尔类型
1.都遵循短路逻辑,如下:
2.运算符的优先级:
六、分支和循坏
1. if条件语句,通过缩进,结构如下:
条件成立时执行的语句if condition,else 条件不成立时执行的语句
if condition:
statement(s)
else:
statement(s)
if condition1:
statement(s)
elseif condition2:
statement(s)
elseif condition3:
statement(s)
if condition1:
statement(s)
elif condition1:
statement(s)
elif condition3:
statement(s)
···
else:
statement(s)
2.while 循环:
while condition:
statement(s)
举例:
九九乘法表举例:
3.for循环:
for 变量 in 可迭代对象:
statement(s)
举例:
4.range的用法:
range(stop)
range(start,stop)
range(start,stop,step)
举例:
七、列表
1.列表形式如下:rhyme为列表名
rhyme=[1,2,3,"啦啦啦"]
2.for循环遍历列表:
查看列表元素:
3.增:
直接增加一个元素:
rhyme.append("哈哈")
直接增加多个元素:
rhyme.extend(["读书","学习","代码"])
在位置为n的地方插入元素m:
rhyme.insert(n,"m")
4.删:
rhyme.remove("删除的内容")
rhyme.pop("删除的内容")
直接清空列表:
rhyme.clear()
5.改:
改位置为n的元素,改为m:
rhyme[n]="m"
改位置为n后面的所有的元素:
rhyme[5:]=["m1","m2","m3"]
6.查:
查找n出现的次数:
rhyme.count(n)
查找n出现的索引值:
rhyme.index("n")
rhyme.index("内容","起始位置","最终位置")
7.排序:
rhyme.sort()
倒序:
rhyme.reverse()
8.列表的加法和乘法
嵌套列表:
输出嵌套列表:
9.浅拷贝和深拷贝
浅拷贝:
rhyme.copy()
深拷贝:需要导包
import copy
rhyme.deepcopy()
区别如下:
浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存。
深拷贝会创造一个一摸一样的对象,新对象和原对象不共享内存,修改新对象不会改变原对对象。
10.列表推导式:
可把for循环简化:
嵌套的列表推导式:
八、元组
1.形式:用圆括号表示
例:
r=(1,2,3,4,5,"啦啦")
2.元组不可以改变里面的元素,但是可以进行切片
例:
3.元组只支持查看,不支持修改。
查看用index(索引值)和count(出现的次数)
r.index(n)
r.count(n)
4.元组的加法和乘法
5.支持嵌套和迭代
6.生成一个只有一个元素的元组,后面要加逗号
7.打包和解包
例如:
8. 元组中的元素不可变。但是若元组中是可变的列表,则内容就是可变的。
九、字符串
1.大小写字母转换的所有函数:
2.对齐方式:
3.字符串的查找:
find和index都是从左往右开始找,rfind和irndex是从右往左开始找;
find进行查找时,若找不见,返回-1;index查找时,找不见,会报错。
4.替换:
x字符串中,m代替n:
x.replace("n","m")
5.所有判断语句:
例如:
判断是都否可打印,有转义字符就不可打印:
判断是否为数字的三种方式举例:
判断子符串是否为合法的标识符:
判断是否为python里的关键字:
6.截取:
例如:
7.拼接:
8.格式化字符串
用format函数:
前面加f:
输出花括号:
9.字符串的对齐讲解:
例如:
10.位数:
例如:
11.适用于整数
例如:
加#显示:
12.适用于浮点数或复数:
十、序列
1.列表,元组和字符串都统称为序列。
列表、元组和字符串的共同点:
(1)都可以通过索引获取每一个元素
(2)第一个元素的索引值都为0
(3)都可以通过切片的方法获取一个范围
(4)都有很多共同的运算符
2.判断是非问题:is和is not
判断包含问题:in和not in
删除:del()
3.列表list()、元组tuple()和字符串str()相互转换。
4.与序列相关的函数:
min() && max():
len() && sum()
sort() 和sorted()区别:
sorted可以处理任何,而sort 只能排序列表
sorted() && reversed()
all() && any()
all判断可迭代对象中是否所有元素都为真,any判断可迭代对象中某个元素的值为真。
enumerate()函数用于返回一个枚举对象,它的功能就是将可迭代对象中的每个元素及从О开始的序号共同构成一个二元组的列表。
zip()函数用于创建一个聚合多个可迭代对象的迭代器。它会将作为参数传入的每个可迭代对象的每个元素依次组合成元组,即第i个元组包含来自每个参数的第i个元素。
map()函数会根据提供的函数对指定的可迭代对象的每个元素进行运算,并将返回运算结果的迭代器。
filter()函数会根据提供的函数对指定的可迭代对象的每个元素进行运算,并将运算结果为真的元素,以迭代器的形式返回。
iter() && next()
5.迭代器和可迭代对象的区别:
一个迭代器肯定是一个可迭代对象。
可迭代对象可以重复使用而迭代器是一次性的。
十一、字典
1.字典是Python中唯一实现映射关系的内置类型。
例如:
2.创建字典:
3.增加:
4.删除:
全部删除:
5.改:update()方法
6.查
直接查:
get()方法:
7.items()、keys() 、values()方法
8.嵌套
9.字典推导式
十二、集合
1.创建一个集合:
2.集合是无序的,不能用下标访问。使用in和not in进行:
3.迭代:
4.集合具有唯一性,用集合可以实现去重的操作:
5.函数,方法:(s是一个集合)
isdisjoint判断两个集合是否毫不相干:
issubset() 方法,判断一个集合是否是另一个集合的子集:
issuperset()方法,判断一个集合是否是另一个集合的超集:
并集、交集和差集,且支持多参数:
对称差集不能多参数,只能支持一个参数:
增加:add(elem)
删除:remove(elem) 、discard(elem) 、pop()
清楚:clear()
6.可以直接进行运算,但符号两边必须是集合类型的数据.
7.set()和frozenset()变的区别:
set可变,frozenset不可变的。
8.集合不能嵌套,使用frozen可以嵌套。
9.可哈希
获取哈希值:hash(object)
不可变的对象都是可哈希的,可变的对象都是不可哈希的。
十三、函数
1.创建和调用函数:def 函数名():
2. 函数的返回值:
3.函数的参数:
位置参数:
关键字参数:
默认参数:使用默认参数时,应该放在最后。
abs和sum函数:
收集参数,用 * ‘’:
打包成元组:
打包成字典:
元组和字典:
解包参数:
4.作用域:
局部作用域:
全局作用域:
5.改变外部的全局变量,global语句
6.嵌套函数:
7.闭包函数:将内层函数作为返回值给返回
8.装饰器函数:把函数作为参数传给另一个函数
优化后,加上注解: