一、数据容器
1.含义
能够存储多个元素的数据类型,叫数据容器
2.常见数据容器
列表(list) 元组(tuple) 字符串(str) 集合(set) 字典(dict)
3.容器符号
列表: 中括号 [] 举例: [元素1,元素2,元素3,...]
元组: 小括号 () 举例: (元素1,元素2,元素3,...)
字符串: 引号 '内容'/"内容"/'''内容'''/"""内容""" 注意: 在字符串中每个字符都是一个元素
集合: 大括号 {} 举例: {元素1,元素2,元素3,...}
字典: 大括号 {} 举例: {key:value , key:value ,...} 注意: 每个键值对是一个元素
二、方法与函数的区别
方法: 本质是一个函数,只是这个函数放到class xxx 类中
注意: 可以说方法一定是一个函数,但是不能说函数一定是一个方法
# 生成随机数
# 自己不会写这个功能,而且python已经提供了,拿过来用
import random
num = random.randint(1, 10)
print(num)
# 定义一个计算两个数和的函数
def get_sum(a, b):
return a + b
he = get_sum(1, 10)
print(he)
"""
方法: 本质是一个函数,只是这个函数放到class xxx 类中
上述random中的randint本质是一个函数,一般称之为方法
自己写的get_sum就是一个函数
"""
三、数据容器-列表
1.列表
空列表: 列表名=[] 或者 列表名=list()
非空列表: 列表名=[元素1,元素2,元素3,...]
列表支持嵌套
# 定义空列表
list1 = []
print(list1)
list2 = list()
print(list2)
# 定义非空列表
list3 = ['a', 'b', 'c']
print(list3)
# 列表的嵌套
class1_list = ['张三', '李四', '王五']
print(class1_list)
class2_list = ['赵六', '田七', '周八']
print(class2_list)
school_list = [class1_list, class2_list]
print(school_list)
2.列表的下表索引
下标索引: 就是咱们说的编号,也就是容器中每个元素的编号
正索引: 从0开始,从左到右,依次递增
负索引: 从-1开始,从右到左,依次递减
根据下标索引查找对应元素格式: 列表名[索引]
# 下标索引: 就是列表中每个元素的编号
# 需求1: 定义列表存储5个学生姓名
name_list = ['张三', '李四', '王五', '赵六', '田七']
# 需求2:查找第一个列表中第一个姓名
name = name_list[0]
print(name)
# 当然也可以使用负索引查找
print(name_list[-5])
# 需求3: 查找最后一个姓名
print(name_list[-1])
# 当然也可以使用正索引查找
print(name_list[4])
# 注意: 因为正索引从0开始数,有时候很容易数错,如果访问了不存在的索引就会包索引越界异常
# print(name_list[5]) # IndexError: list index out of range
# 需求4: 查找索引为2位置的姓名
print(name_list[2])
3.列表的增删改查
'''
增
append:增加
extend:扩展
insert:插入
查
count:计数
index:索引
lenght:长度
删
delete:删除
pop:弹出
clear:清空
'''
# 1.添加功能
# 已知空列表,使用三种方式添加元素到列表中
name_list = []
# 添加'张三'、'李四'到列表中
name_list.append('张三')
name_list.append('张三')
name_list.append('李四')
print(name_list)
# 一次性添加'王五'、'赵六'、'田七'到列表中
name_list.extend(['王五', '赵六', '田七'])
print(name_list)
# 把'周八'插入到第一个位置
name_list.insert(0, '周八')
print(name_list)
# 查询
# 查询'张三'个数
print(name_list.count('张三'))
# 查询'周八'的索引
print(name_list.index('周八'))
# 查询元素个数
print(len(name_list))
# 查询最后一个元素内容
print(name_list[-1])
# 改
name_list[-1] = '钱九'
print(name_list[-1])
# 删
# 删除第一个元素
del name_list[0]
print(name_list)
# 删除最后一个元素
name_list.pop(-1)
print(name_list)
# 删除指定元素'张三'
name_list.remove('张三')
print(name_list)
# 清空列表元素
name_list.clear()
print(name_list)
# 删除列表
del name_list