Python学习笔记——8(组合数据类型+总结)

序列:

定义:成员是有序排列的,并且可以通过下标访问成员的类型

包括:列表,元组,range,字符串

通用操作:

函数描述备注
len(item)计算容器中元素个数
del(item)删除变量del有两种方式
max(item)返回容器中元素最大值如果是字典,只针对key比较
min(item)返回容器中元素最小值如果是字典,只针对key比较
描述Python表达式结果支持的数据类型
切片"0123456789"[::-2]"97531"字符串、列表、元组
运算符Python表达式结果描述支持的数据类型
+[1,2]+[3,4][1,2,3,4]合并字符串、列表、元组
*["Hi"]*4["Hi","Hi","Hi","Hi"]重复字符串、列表、元组
in3 in (1,2,3)True元素是否存在字符串、列表、元组、字典
not in4 not in (1,2,3,)True元素是否不存在字符串、列表、元组、字典
> >= == < <=(1,2,3)<(2,2,3)True元素比较字符串、列表、元组

列表:

定义:

-List(列表)是Python中使用最频繁的数据类型,在其他语言中叫做数组

-专门用于存储一串信息

-列表用[ ]定义,数据之间使用,分隔

-列表的索引从0开始

   -索引就是数据在列表中的位置编号,索引又可以被称为下标

   -注:从列表中取值时,如果超出索引范围,程序会报错

语法:

列表名 = [元素1, 元素2, 元素3 ...]

列表创建代码演示:

# 列表的创建
list1 = []  # 空列表
print(list1)
list2 = [1, 2, 5, True, 'faf']
print(list2)
list3 = list()  # 类型转换:把参数转换为列表
print(list3)
list4 = list('1236415')  # 类型转换:str->list
print(list4)#打印结果为['1', '2', '3', '6', '4', '1', '5']

列表的索引、切片代码演示:

list4 = list('1236415')
# 列表的索引(从0开始)
print(list4[3])  # 打印结果为6
# 列表的切片
print(list4[::2])  # 打印结果为['1', '3', '4', '5']

列表的加法、乘法代码演示 :

# 列表的加法、乘法
list1 = ['I', 'LOVE', 'XuZhou']
list2 = ['Forever']
print(list1 + list2)  # 打印结果:['I', 'LOVE', 'XuZhou', 'Forever']
print(list1 * 2)  # 打印结果:['I', 'LOVE', 'XuZhou', 'I', 'LOVE', 'XuZhou']

列表的成员运算代码演示:

# 列表的成员运算:
list1 = ['I', 'LOVE', 'XuZhou']
print('I' not in list1)  # 打印结果:False
print('LOVE' in list1)  # 打印结果:True

 列表的内置函数代码演示:

# 内置函数
list1 = ['I', 'LOVE', 'XuZhou']
print(len(list1))  # 求元素个数           打印结果:3
print(max(list1))  # 求元素最大值         打印结果:XuZhou
print(min(list1))  # 求元素最小值         打印结果:I

 列表的遍历代码演示:

# 列表的遍历
list1 = ['I', 'LOVE', 'XuZhou']
# 方法一:
for i in list1:
    print(i)
print('*' * 20)
# 方法二
for i in range(len(list1)):
    print(i, list1[i])
print('*' * 20)
# 方法三
for i, j in enumerate(list1):  # 枚举
    print(i, j)
print('*' * 20)

打印结果:

列表的常用方法演示:

# 列表的常用方法  变量.方法名()
list1 = ['I', 'LOVE', 'XuZhou']
# 添加元素
list1.append('666')
print(list1)  # 打印结果:['I', 'LOVE', 'XuZhou', '666']
list1.extend(['very', 'much'])
print(list1)  # 打印结果:['I', 'LOVE', 'XuZhou', '666', 'very', 'much']
# 插入元素
list1.insert(2, '222')
print(list1)  # 打印结果:['I', 'LOVE', '222', 'XuZhou', '666', 'very', 'much']
# 根据索引删除元素
list1.pop(2)
print(list1)  # 打印结果:['I', 'LOVE', 'XuZhou', '666', 'very', 'much']
# 根据元素删除
list1.remove('666')
print(list1)  # 打印结果:['I', 'LOVE', 'XuZhou', 'very', 'much']
# 清空
list1.clear()
print(list1)  # 打印结果:[]

元组:

Tuple(元组)与列表类似,不同之处在于元组的元素不能修改

元组用()定义

# 元组创建
tuple1 = (1, 2, 3, 5, True, 'LOVE')
print(tuple1)
tuple2 = (1,)  # 元组里只有一个元素时,加一个逗号
print(tuple2)
tuple3 = tuple()  # tuple():类型转换
print(tuple3)
tuple4 = ()
print(tuple4)
# 类型转换
tuple5 = tuple('hello')  # str->tuple
print(tuple5)
tuple6 = tuple([1, 2, 3, 4])  # list->tuple
print(tuple6)
list1 = list(tuple6)  # tuple->list
print(list1)
str1 = str(tuple6)  # tuple->str
print(str1)

元组常用方法:

# 元组常用方法
tuple1 = (1, 2, 3, 5, True, 'LOVE')
tuple2 = (1, 5, 6, 8, 5, 8, 6)
a = tuple2.count(8)  # 计数
print(a)
b = tuple1.index(5)
print(b)

# 元组的遍历
tuple1 = (1, 2, 3, 5, True, 'LOVE')
# 方法一:
for i in tuple1:
    print(i)
# 方法二:
for index, value in enumerate(tuple1):
    print(index, value)
# 方法三:
for i in range(len(tuple1)):
    print(i, tuple[i])

range:

系统提供的内建函数

一般用于for-in循环遍历

# range(start,end,step)
print(list(range(10)))  # end  打印结果为[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(list(range(2, 10)))  # start,end   打印结果为[2, 3, 4, 5, 6, 7, 8, 9]
print(list(range(2, 10, 3)))  # start,end,step   打印结果为[2, 5, 8]

字符串:

# 字符串的遍历
s1 = 'I LOVE XUZHOU'
for i in s1:
    print(i)

for index, value in enumerate(s1):
    print(index, value)

for i in range(len(s1)):
    print(i, s1[i])

# 类型转换
print(str(12), type(str(12)))  # int->str
print(str([1, 2, 3, 4]), type(str([1, 2, 3, 4])))  # list->str
print(str((1,)), type(str(1, )))  # tuple->str

# 常用方法:
print(s1.islower())  # 判断是否都是小写
print(s1.isupper())  # 判断是否都是大写
print(s1.strip())  # 去除空格
print(s1.split(' '))  # 分隔字符串
print('#'.join(['111', '222', '3333']))  # 连接字符

字典:

Python中除列表以外最灵活的数据类型

字典是无序的对象集合

-字典用{}定义

-字典使用键值对存储数据,键值对之间用,分隔

-键key是索引

-值value是数据

-键和值之间用:分隔

-键必须是唯一的

-值可以取任何数据类型,但键只能使用字符串、数字或元组

字典的创建演示:

# 字典的创建  键重复会覆盖掉之前的值
d = {
    'name': 'Zhang',  # 键值对
    'gender': 'male'
}
print(d)
# 空字典
d = {}
print(d)
d = dict()
print(d)
#新增键值对
d['height'] = 180
print(d)
#获取键值对
print(d['name'])
#修改键值对
d['gender'] = 'female'
print(d)

#字典的遍历
for i in d:
    print(i,d[i])

for k,v in d.items():
    print(k,v)
for k in d.keys():
    print(k)
for v in d.values():
    print(v)

字典的常用方法:

#字典的常用方法
d.pop('name')#删除
d.get('gender')#获取
d.popitem()#从后面删除
d.update()

集合:

不允许有重复元素,如果添加重复元素,则自动过滤,可以进行交集、并集的运算

集合的创建演示:

# 集合的创建
s = set()
print(s)
s = {1, 2, 3, 4}
print(s)
s = set([1, 2, 3])  # list->set
s = set((1, 2, 3))  # tuple->set
s = set('123')  # str -> set
s = set({1: 'a', 'a': 2})  # dict->set
print(s)

集合的常用方法:

# 常见方法
s = {1, 2, 3, 4}
s.remove(1)
print(s)
s.update({5, 6, 7})
print(s)
s.add(8)
print(s)
s.add(7)
print(s)

交集、并集:

# 交集 并集
s1 = {5, 6, 7, 8, 9}
s2 = {4, 5, 8}
print(s1 & s2)  # 交集
print(s1 | s2)  # 并集

列表去重:

# 列表去重
score = [70, 50, 80, 70, 60, 90, 100]
s = set(score)
print(s)
d = {}
# 统计各个分数都有几个学生
for i in s:
    t = score.count(i)
    print('得分为%d的学生有%d人' % (i, t))
    d[i] = t
print()
for k,v in d.items():
    print('得分为%d的学生有%d人' % (k,v))

 可变与不可变类型:

不可变类型:

定义:创建后,其值不能被改变

种类:1.数字(eg:int、float、complex)

           2.字符串(eg:str)

           3.元组(eg:tuple)

           4.布尔类型(eg:bool)

可变类型:

定义:创建后可以被改变

种类:1.列表(eg:list)

           2.字典(eg:dict)

           3.集合(eg:set)

总结:

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值