阶段一
第二周
第一节
- capitalize
- 首字母大写:newstr = string.capitalize();
- 只对第一个字母有效
- 只对字母有效
- 已经是大写,则无效
- 字符串小写:casefold(其他语法) and lower(只能对英语)
- 只对字符串的字母有效
- 已经小写,则无效
- 将字符串全体大写: upper
- big_info = info.upper()
- swapcase
- 只对字符串的字母
- 将字符串中大小写字母进行转换
- string.startswith(item) item:你想查询的元素,返回一个布尔值
- zfill的功能
- 为字符串定义长度,如不满足,缺少的部分用0填充
- 与字符串的字符无关
- 如果定义长度小于当前字符串长度,则不发生变化
- count
- 返回当前字符串中某个成员(元素)的个数
- inttype = string.count(item) item:查询个数的元素
- 如果查询的成员(元素)不存在,则返回0
- startswith endswith
- startswith 判断字符串开始位是否是某成员(元素)
- endswith 判断字符串结尾是否是某成员(元素)
- strip
- strip 将去掉字符串串左两边的指定元素 ,默认空格。
- newstr = string.strip(item)
- 传入的元素如果不在开头或者结尾则无效
- lstrip 仅去掉字符串开头的指定元素或者空格
- rstrip 仅去掉字符串结尾的指定元素或者空格
- find index
- 查找字符 str.find(目标串,【开始位置】,【结束位置】) 返回整型
- 查找字符 str.index(目标串,【开始位置】,【结束位置】) 返回整型或者报错
- 字符串替换 str.replace(原始串,目标串,【替换次数】)
- isspace
- isspace 判断字符串是否是一个有空格组成的字符串
- booltype = string.isspce()无参可传 返回一个布尔型
- istitle判断字符串是否是一个标题类型
- booltype = string.istitle()无参可传 返回一个布尔型
- isupper 判断字符串中的字母是否都是大写
- islower 判断字符串中的字母是否都是小写
- join split
- 字符串格式化使用操作符 %s 来实现
- 格式化数字 format(1234.567,‘0.2f’)format(1234.567,’,’)
- 格式化字符串 “{} {} you”.format(“l”,“love”) 将产生 l love you
- 转义字符
- 字符要转成其他含义的功能
- + 字符
- 格式化字符串 “{} {} you”.format(“l”,“love”) 将产生 l love you 格式化数字
- format(1234.567,‘0.2f’)format(1234.567,’,’)
- 查找字符 str.find(目标串,【开始位置】,【结束位置】) 字符串替换 str.replace(原始串,目标串,【替换次数】)
- 体重/ 身高的平方.pow(4,2);
第一节
- len
- len函数可以计算出 除了数字类型以为,其他所有的数据类型的长度
names = ['xiaolu','letme','x=uzi']
leegth = len(names)
print(length)
- 列表(元组)之间的累加与乘法
- in 是判断某个成员(元素)是否在该数据结构中
- not in 就是判断某个成员(元素)是否不在该数据结构中
names = ['xiaolu','letme','x=uzi']
bool('xiaohu' in names)
-
append
-
将一个元素添加到当前列表中
-
list.append(new_item) 添加进列表的新的元素(成员)
-
被添加的元素只会被添加到末尾
-
append函数是在原有列表的基础上添加,不需要额外添加新的变量
-
insert
-
将一个元素添加到当前列表的制定位置中
-
list.insert(index,new_item)
-
参数:index:新的元素放在哪个位置(数字)
-
new_item:添加的新元素(成员)
fruits = ['苹果','西瓜','水蜜桃']
fruits.insert(0,'水晶梨')
fruist
-
insert与append的区别
-
append只能添加到列表的结尾,而insert可以选择任何一个位置
-
如果insert传入的位置列表中不存在,则将新元素添加到列表结尾
-
字符串,元组,字符串元素的位置是从0开始计算的
-
count
-
返回当前字符串中某个成员的个数
-
inttype= list.count(item) 参数:item:你想查询个数的元素
-
如果查询的成员(元素)不存在,则返回0
-
列表只会检查完整元素是否存在需要计算的内容
-
remove
-
删除列表中的某个元素
-
ist.remove(item) 参数:item: 准备删除的列表元素
-
如果删除的成员(元素)不存在,会直接报错
-
如果被删除的元素有多个,只会删除第一个
-
remove函数不会返回一个新的列表,而是在原先的列表中对元素进行删除
-
Python的内置函数del
-
del把变量完全删除
-
drinks = [‘123’,‘456’,‘789’] del drinks
-
reverse
-
对当前列表顺序进行反转
-
list.reverse() 参数:无参数传递
-
sort
-
对当前列表按照一定规律进行排序
-
ist.sort(key=None, reverse=False)
-
参数:key –参数比较reverse --排序规则,reverse = True降序,reverse = False升序(默认)
-
key涉及函数学习,我们在日后讲解当前默认不传即可
-
列表中的元素类型必须相同,否则无法排序(报错)
-
clear的功能
-
将当前列表中的数据清空
-
list.clear() -> 该函数无参数,无返回值
-
copy
-
将当前的列表复制一份相同的列表,新列表与旧列表内容相同,但内存空间不同
-
list.copy() -> 该函数无参数,返回一个一模一样的列表
-
二次赋值的变量与原始变量享有相同内存空间;copy函数创建的新列表与原始列表不是一个内存空间,不同享数据变更-------copy属于浅拷贝
-
通俗的说,我们有一个列表a,列表里的元素还是列表,当我们拷贝出新列表b后,无论是a还是b的内部的列表中的数据发生了变化后,相互之间都会受到影响,–—浅拷贝
-
不仅对第一层数据进行了copy,对深层的数据也进行copy,原始变量和新变量完完全全不共享数据–------深拷贝
-
extend的功能
-
将其他列表或元组中的元素倒入到当前列表中
-
list.extend(iterable) -> 参数:iterable代表列表或元组,该函数无返回值
-
索引
-
字符串,列表和元组
-
从最左边记录的位置就是索引
-
索引用数字表示,起始从0开始
-
字符串,列表(元组)的最大索引是他们的长度–1
-
[‘name’, ‘work’, ‘test’…]索引0索引1索引2
-
切片
-
索引用来对单个元素进行访问,切片则对一定范围内的元素进行访问
-
切片通过冒号在中括号内把像个的两个索引查找出来[0: 10]
-
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9 ,10]----print(numbers[3: 8]) >> [4, 5, 6, 7, 8]
-
切片规则为:左含,右不含
-
列表的索引,获取与修改
-
list[index] = new_item
-
数据的修改只能在存在的索引范围内列表无法通过添加新的索引的方式赋值list.index(item) tests = [‘a’, ‘b’, ‘c’] tests[2] = 's’oktests [3] = ‘o’-> X
-
pop的用法
-
通过索引删除并获取列表的元素
-
list.pop(index) 参数:index: 删除列表的第几个索引
-
-> 函数会删除该索引的元素并返回
-
-> 如果传入的index索引不存在则报错
-
del list[index]
-
直接删除无返回值
-
如果index(索引)不存在则报错
-
索引切片在元组中的特殊性
-
可以和列表一样获取索引与切片索引
-
元组函数index 和列表用法完全一致
-
无法通过索引修改与删除元素
-
字符串的索引与获取
-
索引规则与列表相同
-
切片和索引的获取与列表相同
-
无法通过索引修改与删除
-
字符串不可修改 name = ‘dewei’ name[0] -> d name[:2] -> de
-
字符串的find与index函数
-
获取元素的索引位置
-
string.index(item) -> item: 查询个数的元素, 返回索引位置
-
string.find(item) -> item: 查询个数的元素, 返回索引位置
-
find与index的区别
-
find如果获取不到,返回-1
-
index如果获取不到,直接报错
第三节
- 字典添加修改数据的方法
- 字符串,列表,list[0] = 10
- 字典没有索引
- dict[‘name’] = ‘dewei’
- 添加或修改,根据key是否存在所决定
- update的功能与用法
- 添加新的字典,如新字典中有和原字典相同的key,则该key的value会被新字典的value覆盖
- dict.update(new_dict) --该函数无返回值 new_dict: 新的字典
- setdefault的功能
- 获取某个key的value,如key不存在于字典中,将会添加key并将value设为默认值
- dict.setdefault(key, value)
- 参数:key 需要获取的keyvalue 如果key不存在,对应这个key存入字典的默认值
- 字典中每一个key一定是唯一的
- 字典中的数据量没有限制
- 字典中的value可以是任何python的那内置据类型的对象和自定义的对象
- keys功能
- 获取当前字典中所有的键(key)
- dict.keys() -> 无需传参,返回一个key集合的伪列表
- 字典的values函数
- 获取当前字典中所有键值对中的值(value)
- dict.values() -> 无需传参,返回一个value集合的伪列表
- my_dict = {‘name’:‘xiaohu’,‘age’:33};
- my_dict.values();
- dict_values([‘xiaohu’,33])
- 字典key的获取
- []的获取方法
- 字典+中括号内传key,不进行赋值操作即为获取
- 返回key对应的value值
- get功能
- 获取当前字典中指定key的value
- dict.get(key, default=None)
- 参数:key:需要获取value的key
- default:key不存在则返回此默认值,默认是None,我们也可以自定义
- []与get的区别
- [] 如果获取的key不存在,则直接报错
- get如果获取的key不存在,则返回默认值
- 所以开发中,优先使用get函数
- 字典的删除
- clear功能
- 清空当前的字典中所有数据
- dict.clear() -> 无参数,无返回值
- pop功能
- 删除字典中指定的key,并将其结果返回,如果key不存在则报错
- dict.pop(key)
- –key 希望被删掉的键
-
返回这个key对应的值(value)
- del 在字典中的用法
- my_dict= {‘name’: ‘dewei’, ‘age’: 33}
- del my_dict[‘name’]
- print(my_dict)
-
{‘age’: 33}
- del my_dict
- print(my_dict) -> 报错,整个字典对象已被删除
- 字典的复制—copy函数
- 将当前字典复制一个新的字典
- dict.copy() -> 该函数无参数,返回一个一模一样的内存地址不同的字典
- in 与not in
- popitem功能
- 删除当前字典里末尾一组键值对并将其返回
- dict.popitem()–无需传参
-
返回被删除的键值对,用元组包裹0索引是key,1索引是value
my_dict = {'name':'xiaohu','age':33}
my_dict.popotem()
('age',33)
- 如字典为空,则直接报错
- 所有数据类型与布尔值的关系
- 字符串,数字,列表,元组,字典,空类型与布尔值的关系总结
- 数据类型与布尔值的关系
- 每一种数据类型,自身的值都有表示True与False
- not 对于一切结果取反
第二周
第一节
- 集合的操作数据类型间的转换条件语句循环函数
- 什么是集合
- 集合(set)是一个无序的不重复元素序列
- 常用来对两个列表进行交并差的处理性
- 集合与列表一样,支持所有数据类型 例子:{‘name’, 1, ‘xiaomu’}
- 集合的创建
- 通过set函数来创建集合,不能使用{} 来创建空集合
- a_set= set() -> 空集合
- a_set= set([1,2,3]) -> 传入列表或元组
- b_set= {1, 2, 3} -> 传入元素
- c_set= {} -> X
- 集合的增删改
- add的功能
- 用于集合中添加一个元素,如果集合中已存在该元素则该函数不执行
- set.add(item)
- 参数:
- item:要添加到集合中的元素
- 返回值:无返回值
a_set = set();
a_set.add('dewei');
a_set
{'dewei'}
- update的功能
- 加入一个新的集合(或列表,元组),如新集合内的元素在原集合中存在则无视
- set.update(iterable)
- 参数:
- iterable:一个集合或列表或元组
- 返回值:
- 无返回值,直接作用于原集合
- remove的功能
- 将集合中的某个元素删除,如元素不存在将会报错
- set.remove(item) #注意是元素不是索引
- 参数:
- item:当前集合中的一个元素
- 返回值:
- 无返回值,直接作用于原集合
- clear的功能
- 清空当前集合中的所有元素
- set.clear()
- 参数:无
- 返回值:
- 无返回值,直接作用于原集合
- del 删除集合
- 举例:a_set= {1,2,3}
- del a_set
- print(a_set)# 报错
- 重要说明
- 集合无法通过索引获取元素
- 集合无获取元素的任何方法
- 集合只是用来处理列表或元组的一种临时类型,他不适合存储与传输
- 集合的差集—
- a,b两个集合,由所有属于a且不属于b的元素组成的集合,叫做a与b的差集
- difference函数
- 返回集合的差集,即返回的集合元素包含在第一个集合中,但不包含在第二个集合(方法的参数)中
- a_set.difference(b_set)
- 参数:
- b_set:当前集合需要对比的集合
- 返回值:
- 返回原始集合于对比集合的差集
- (即a_set与b_set的差集)
- 集合的交集-intersection函数
- a,b两个集合分别拥有的相同的元素集,称为a与b的交集
- 返回两个或更多集合中都包含的元素,即交集
- a_set.intersection(b_set…)
- 参数:b_set…:与当前集合对比的1或多个集合
- 返回值:返回原始集合与对比集合的交集
- 什么是并集
- a,b两个集合中所有的元素(去掉重复)即为a与b的并集
- union的功能
- 返回多个集合的并集,即包含了所有集合的元素,重复的元素只会出现一次
- a_set.union(b_set…)
- 参数:
- b_set…:与当前集合对比的1或多个集合
- 返回值:
- 返回原始集合与对比集合的并集
- 集合的isdisjoint函数
- isdisjoint的功能
- 判断两个集合是否包含相同的元素,如果没有返回True,否则返回False
- a_set.isdisjoint(b_set)
- 参数:
- b_set:与当前集合用来判断的集合
- 返回值:
- 返回一个布尔值True 或False
第二节
- 字符串与数字间的转换
- 什么是类型转换,为何做类型转换
- 将自身数据类型变成新的数据类型,并拥有新的数据类型的所有功能的过程即为类型转换
- 为方便更好的帮助处理业务,将类型变更为更适合业务场景的类型
- a = ‘1’ # 无法做数字操作
- 字符串与数字之间转换的要求
- str->number : 数字组成的字符串
- number str: 无要求
- 字符串与数字之间转换的函数
字典:{“你好”:“那么”} 元组:(1,3,4,523)字符串:[true,flase]
第三节
- 字符串与列表间的转换
- 字符串转列表之split
- 将字符串以一定规则切割转成列表
- string.split(sep=None, maxsplit=-1)
- 参数:sep: 切割的规则符号,不填写,默认空格,如字符串无空
- 格则不分割生成列表
- maxsplit:根据切割符号切割的次数,默认-1无限制
- 返回值:返回一个列表
- 列表转字符串之join 功能
- 将列表以一定规则转成字符串
- ‘sep’.join(iterable)
- 参数:
- sep: 生成字符串用来分割列表每个元素的符号
- iterable:非数字类型的列表或元组或集合
- 返回值:返回一个字符串
- sorted
- 字符串与bytes的转换
- 什么是比特类型
- 二进制的数据流—byte
- 一种特殊的字符串
- 字符串前+b标记
- dir(变量) 查到所有
- 字符串转bytes的函数—encode 功能
- 将字符串转成比特(bytes)类型
- string. encode(encoding=‘utf-8’, errors=‘strict’)
- 参数:
- encoding: 转换成的编码格式,如ascii,gbk,默认utf-8
- errors: 出错时的处理方法,默认strict,直接抛错误,也可以选择ignore忽略错误
- 返回值:
- 返回一个比特(bytes)类型
- bytes转字符串的函数–decode
- 将比特(bytes)类型转成字符串
- bytes. decode(encoding=‘utf-8’, errors=‘strict’)
- 参数:
- encoding: 转换成的编码格式,如ascii,gbk,默认utf-8
- errors: 出错时的处理方法,默认strict,直接抛错误,也可以选择ignore忽略错误
- 返回值:返回一个字符串类型
- 列表元组集合之间的转换函数