元组的定义
本质:也是一种有序的集合。但与list不同,元组一旦初始化则不能修改。
元组的创建:
tuple1 =()
: 创建空元组
tuple2 = tuple()
: 创建空元组
tuple3 = (1)
: 创建只有一个元素的元组
tuple4 = 1
: 创建只有一个元素的元组
注意:当元组中只有一个元素的时候,我们必须在该元素的末尾添加一个逗号,来消除歧义。
元组小括号可以省略,但是逗号不能省略
获取元组元素的长度
len(tuple1)
元组元素的访问:
tuple1=(元素1,元素2,。。。,元素n)
通过索引值/下标来进行访问
tuple1[index]
index的取值范围[0,len(tuple1)]
index取值可以为负,为负的时候,从右往左进行取值。
修改元组:
指的是在元组的内部添加一个可变对象,通过修改可变对象进而来修改我们的元组,
在元组中一旦初始化则不能修改指的是,元组一旦创建,他的对应元素指向不会再发生变化。
删除元组
del tuple1
1.元组的连接/组合:
使用 “ + ”
tuple3=tuple1+tuple2
功能:将tuple1与tuple2中的元素去除重新组合成一个新的元组并且返回
2.元组的重复
tuple2=tuple1*n
功能:将tuple1中的元素重复n次输出到新的元组中
3.元素 in 元组
判断元素是否在元组中存在,若存在则返回true,否则返回false
4.元组的截取
tuple1[start:end]
start: 默认0
end:默认len()
功能:获取开始下标到结束下标之前的所有元素。
若不指定start则默认是从开头开始截取到指定位置
若不指定end则默认从指定位置截取到结尾
5.max(tuple1)
功能:返回tuple1中的最大值
6.min(tuple1)
功能:返回tuple1中的最小值
7.tuple(list1)
功能:将列表转为元组
8.二维元组
tuple1=(t1,t2,....,tn)
当元组中的元素刚好又是元组的时候,我们称这个元组为二维元组.
9.二维元组的访问
tuple1 index1
index1:代表第几个元组
index2:元组中第几个元素
10.tuple1.count(x)
功能:统计x在tuple1中出现的次数
11.tuple1.index(obj,start,end)
功能:在tuple1中查找obj,若找到则返回第一匹配到的下标值,若找不到则报错
查询范围[start,end),若不指定则查询整个元组
string字符串
str1.splitlines(keepend=False)
功能:将str1按行切片,并且将切片的结果作为一个列表返回。keepend默认为False,
当keepend为True的时候,显示切片的字符【\n】
str2.join(序列)
功能:将序列中的字符串以指定的str2进行拼接,并将拼接好的字符串返回。
min(str1)
功能:返回str1中的最小字符【比较的是ASCII码值】
max(str1)
功能:返回str1中的最大字符
str1.replace(old,new,count)
参数一:被替换的字符串
参数二:新的字符串
参数三:替换的次数,若不指定默认全部替换
功能:使用new将str1中old字符串进行替换,若指定count则替换前count个,
若不指定count,则全部替换。
判断字符串是否以xx开头
str1.startswith("xx",start)
若是以xx开头则返回True,否则返回False,若指定范围,则取值范围为[start,end),
若不指定范围,则默认整个字符串
判断字符串是否以xx结尾
str1.endswith("xx")
若是以xx结尾则返回True,否则返回False,若指定范围,则取值范围为[start,end),
若不指定范围,则默认整个字符串
将普通字符串转为二进制
str1.encode()
将二进制字符串转为普通字符串
str2.decode()
注意:编码的格式与解码的格式必须保持一致
字符串中常用函数
str1.isalpha()
功能:判断str1是否为纯字母,若是则返回True,否则返回False。
注意:此功能没有考虑中文,中文默认也是字母
str1.isalnum()
功能:判断str1是否由数字与字母组成,若是则返回True,否则返回False。
注意:此功能没有考虑中文,中文默认也是字母
str1.isupper()
功能:判断str1中出现的字母是否全部为大写,若是则返回True,否则返回False
str1.islower()
功能:判断str1中出现的字母是否全部为小写,若是则返回True,否则返回False
str1.istitle()
功能:判断str1是否为标题化的字符串,若是则返回True,否则返回False
str1.isspace()
功能:判断str1中是否只包含空白符,若是则返回True,否则返回False。
str1.isdigit()
:只能识别阿拉伯数字
str1.isdecimal()
:只能识别阿拉伯数字
str1.isnumeric()
:除了阿拉伯数字还可以识别中文的一二三
字典:
本质也是一个集合,是一个无序的集合,存储的时候以键值对的方式来进行存储。
key-value来进行存储
key-value要求:
1.字典中的key必须是唯一的
2.字典中的key必须是不可变对象
不可变对象:
str,number,bool,None,tuple
可变对象:
list,dict,set
字典的创建:
dict1={key:value,key2:value2,...,keyn:valuen}
元素访问:
1.dict1[key]
2.dict1.get(key)
使用上边两种方式都可以访问元素,但是使用get方法获取的时候,当key不存在时,不会报错,而是返回None,若key直接获取,当key不存在的时候则报错。
添加元素/更改元素
dict1[key]=value
原因:字典中不能重复,它对应的值只有一个,后面添加的会把前面的覆盖。
列表与字典的区别与联系
1.存储方式
字典存储的时候以键值对的方式存储
列表只存储了字典中的value
2.占用空间
字典占用的空间比较大
1)字典需要存储key
2)字典不是紧密排列的
3当数据量大的时候,字典的优势更明显