1. 数据类型高级
1.1 字符串高级
字符串的常见操作包括:
获取长度:len len函数可以获取字符串的长度。
查找内容:find 查找指定内容在字符串中是否存在,如果存在就返回该内容在字符串中第一次出现的开始位置索引值(从0开始计算),如果不存在,则返回-1.
判断:startswith,endswith 判断字符串是不是以谁谁谁开头/结尾
计算出现次数:count 返回 str在start和end之间 ,在字符串中出现的次数
替换内容:replace 替换字符串中指定的内容,如果指定次数count,则替换不会超过count次。
切割字符串:split 通过参数的内容切割字符串
修改大小写:upper,lower 将字符串转为大写或小写
空格处理:strip 去空格
字符串拼接:join 字符串拼接
str = "a" print(str.join('hello')) #haealalao #重点解释一下join,会把指定字符串添加到字符串的每个字符的中间(第一个字符和最后一个字符不加)。一般用的不多
1.2 列表高级
列表的增删改查
添加元素
添加元素有一下几个方法:
append 在末尾添加元素
insert 在指定位置插入元素
extend 合并两个列表
append
append会把新元素添加到列表末尾
name_list = ['张三', '李四'] name_list.append('王五') print(name_list) #['张三', '李四', '王五']
insert
insert(index, object) 在指定位置index前插入元素object name_list = ['张三', '李四'] name_list.insert(1, '小明') print(name_list) #['张三', '小明', '李四']
extend
通过extend可以将另一个列表中的元素逐一添加到列表中
name_list = ['张三', '李四'] name_list2 = ['小丽', '小王'] name_list.extend(name_list2) print(name_list) #['张三', '李四', '小丽', '小王']
修改元素
我们是通过指定下标来访问列表元素,因此修改元素的时候,为指定的列表下标赋值即可。
name_list = ['张三', '李四'] print("修改前:%s" % name_list) name_list[1] = '小丽' print("修改后:%s" % name_list) #修改前:['张三', '李四'] #修改后:['张三', '小丽']
查找元素
所谓的查找,就是看看指定的元素是否存在,主要包含一下几个方法:
in 和 not in
python中查找的常用方法为:
in(存在),如果存在那么结果为true,否则为false
not in(不存在),如果不存在那么结果为true,否则false
name_list = ['张三', '李四'] if '王五' in name_list: print('存在') else: print('不存在') #不存在
not类似,只不过取反
删除元素
列表元素的常用删除方法有:
del:根据下标进行删除
pop:删除最后一个元素
remove:根据元素的值进行删除
del
name_list = ['张三', '李四', '小丽'] del name_list[1] print(name_list) #['张三', '小丽']
pop
name_list = ['张三', '李四', '小丽'] name_list.pop() print(name_list) #['张三', '李四']
remove
name_list = ['张三', '李四', '小丽'] name_list.remove('张三') print(name_list) #['李四', '小丽']
1.3 元组高级
Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
1.3.1 访问元组
tuple1 = (1, 2, 3) print(tuple1[1]) #2
python中不允许修改元组的数据,包括不能删除其中的元素。
1.3.2 定义只有一个数据的元组
定义只有一个元素的元组,需要在唯一的元素后写一个逗号
tuple1 = (1) print(type(tuple1)) #int tuple2 = (1,) print(type(tuple2)) #tuple
1.4 切片
切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。
切片的语法:[起始:结束:步长],也可以简化使用 [起始:结束]
注意:选取的区间从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身),步长表示选取间隔。
# 索引是通过下标取某一个元素 # 切片是通过下标去某一段元素 s = 'Hello World!' print(s) print(s[4]) # o 字符串里的第4个元素 print(s[3:7]) # lo W 包含下标 3,不含下标 7 print(s[1:]) # ello World! 从下标为1开始,取出 后面所有的元素(没有结束位) print(s[:4]) # Hell 从起始位置开始,取到 下标为4的前一个元素(不包括结束位本身) print(s[1:5:2]) # el 从下标为1开始,取到下标为5的前一个元素,步长为2(不包括结束位本身)
1.5 字典高级
1.5.1 查看元素
除了使用key查找数据,还可以使用get来获取数据
person = {'name': '张三', 'age': 18} # 不可以通过 .属性,获取值 print(person['name']) # print(person['email']) # 获取不存在的key,会发生异常 print(person.get('name')) print(person.get('email')) # 获取不存在的key,会获取到None值,不会出现异常 print(person.get('email', '123@126.com')) # 获取不存在的key, 可以提供一个默认值。
1.5.2 修改元素
字典的每个元素中的数据是可以修改的,只要通过key找到,即可修改
person = {'name': '张三', 'age': 18} person['name'] = '小丽' print('修改后的值是:%s' % person) #修改后的值是:{'name': '小丽', 'age': 18}
1.5.3 添加元素
如果在使用 变量名[‘键’] = 数据 时,这个“键”在字典中,不存在,那么就会新增这个元素
person = {'name': '张三', 'age': 18} person['email'] = '123.@126.com' print('添加后的值是:%s' % person) #添加后的值是:{'name': '张三', 'age': 18, 'email': '123.@126.com'}
1.5.4 删除元素
对字典进行删除操作,有一下几种:
del
clear()
del删除指定的元素
person = {'name': '张三', 'age': 18} del person['age'] print(person) #{'name': '张三'}
del删除整个字典
person = {'name': '张三', 'age': 18} del person print(person) #报错:NameError: name 'person' is not defined
clear清空整个字典,但保留字典的结构
person = {'name': '张三', 'age': 18} person.clear() print(person) #{}
1.5.5 字典的遍历
遍历字典的key(键)
person = {'name': '张三', 'age': 18, 'email': '123@126.com'} for s in person.keys(): print(s) #name #age #email
遍历字典的value(值)
person = {'name': '张三', 'age': 18, 'email': '123@126.com'} for s in person.values(): print(s) #张三 #18 #123@126.com
遍历字典的项(元素)
person = {'name': '张三', 'age': 18, 'email': '123@126.com'} for i in person.items(): print(i) #('name', '张三') #('age', 18) #('email', '123@126.com')
遍历字典的key-value(键值对)
person = {'name': '张三', 'age': 18, 'email': '123@126.com'} for k, v in person.items(): print('key是:%s,value是:%s' % (k, v)) #key是:name,value是:张三 #key是:age,value是:18 #key是:email,value是:123@126.com
2. 函数
2.1 定义函数
定义函数的格式如下:
def 函数名(): 代码
定义了函数之后,就相当于有了一个具有某些功能的代码,想要让这些代码能够执行,需要调用它
调用函数很简单的,通过 函数名() 即可完成调用
示例:
#定义函数 def f1(): print('hello ') print('world') f1() #定义完函数后,函数是不会自动执行的,需要调用它才可以
结果:
hello world
函数定义好以后,函数体里的代码并不会执行,如果想要执行函数体里的内容,需要手动的调用函数。
每次调用函数时,函数都会从头开始执行,当这个函数中的代码执行完毕后,意味着调用结束了。