【Python】数据类型之列表
短信预约 -IT技能 免费直播动态提醒
知识目录
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可
一、定义和遍历
1.1 定义列表
list = [] # 1.定义一个空列表print(type(list))namelist = ["xiaoguo", "123", "321"] # 2.定义并初始化一个列表print(namelist[0])print(namelist[1])print(namelist[2])list1 = [123, "Jerry"] # 3.列表可以存储不同数据类型print(type(list1[0]))print(type(list1[1]))
1.2 打印和截取列表
list = [11,22,33]print(list) # 1.打印列表所有元素print(list[1:3]) # 2.方括号截取,左闭右开
nameList = ["xiaoguo","xiaojiang","xiaoma"]print(nameList[2]) # 读取列表第三个元素print(nameList[-2]) # 读取列表倒数第二个元素print(nameList[1:]) # 从第二个元素读到最后print(nameList[:2]) # 从第一个元素读到第二个元素
1.3 遍历列表
namelist = ["xiaoguo", "123", "321"] # 定义并初始化一个列表for name in namelist: print(name, end="\t") # for循环遍历 print()length = len(namelist) # 获取列表长度i = 0while i < length: # while循环遍历 print(namelist[i], end="\t") i += 1
二、增删改查
2.1 更新和删除列表
list1 = [];list1.append("Str") # 1.使用append()函数追加元素list1.append(123)print(list1)
list2 = [123,"Json","carry",6]print(list2)# 1.del()del list2 # 删除整个列表del list2[1] # 删除第二个元素print(list2)# 2.pop() 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值print(list2.pop())print(list2)print(list2.pop(0))# 3.remove() 移除列表中某个值的第一个匹配项list3 = ["tom", "jery", "kete", "hello", "tom"]list3.remove("tom")print(list3)
2.3 脚本操作符 * + in
list = [1,"小王","xiaoLi"]length = len(list) # 长度print(length)list1 = [2,"xiaoguo"]print(list + list1) # 相加list2 = list1*3 # 重复print(list2)b = 1 in list2 # 判断元素是否在列表中print(b)
三、函数和方法
函数和方法的区别 |
---|
与类和实例无绑定关系的function都属于函数(function),与类和实例有绑定关系的function都属于方法(method) |
方法和函数类似,同样封装了独立的功能;简单的说,函数在python中独立存在,是可以直接使用的,而方法必须是别人调用才能实现的 |
3.1 函数
函数 | 用法作用 |
---|---|
cmp() | Python 3.X 的版本中已经没有 cmp 函数,如果你需要实现比较功能,需要引入 operator 模块,适合任何对象,例如operator.lt(a,b) |
len() | 列表元素个数 |
max() | 列表元素最大值,在列表中的元素是同类型时才可以比较,否则报错,如含有数字和字符串的列表不能比较 |
min() | 列表元素最小值,规则和max()函数一致 |
list() | 将元组转化为列表,元组和列表是非常相似的,区别在于元组的值不能更改,包含在圆括号中 |
# 1.cmp() 比较list1 = [11, 22, 33, "123"]list2 = [22, 33]print(operator.lt(list1, list2))# 2.len() 长度print("length:%d"%len(list2))# 3.max()print(max(list2)) # 4.min()print(min(list2)) # 5.list() tmp = (1, 2, 3, "jack")print(type(tmp))print(list(tmp)) # 将元组转化为列表
3.2 方法
# 1.append() list1 = ["mali", "tom"]list1.append([12])print(list1)# 2.count() print(list1.count("tom"))# 3.extend() list1.extend(["str", 1])print(list1)# 4.index()print(list1.index(1))# 5.insert()list2 = [11, 22, 33]list2.insert(1, 123)print(list2)# 6.pop()print(list2.pop())print(list2)print(list2.pop(0))# 7.remove()list3 = ["tom", "jery", "kete", "hello", "tom"]list3.remove("tom")print(list3)# 8.reverse()list4 = [1, 2, 3]list4.reverse()print(list4)# 9.sort()list5 = [1, 5, -234, 329]list5.sort()print(list5)list5.sort(reverse=True)print(list5)
列表例题:8位老师随机分到3个办公室
# 定义三个办公室offices = [[], [], []]# 定义8个老师teachers = ["A", "B", "C", "D", "E", "F", "G", "H"]for name in teachers: # 生成0-2的3个随机数 ran = random.randint(0, 2) # 将老师添加到随机办公室中 offices[ran].append(name)# 查看每间办公室的人数i = 1for office in offices: print("第%d间办公室有%d人,分别是:" %(i, len(office))) i+=1 for off in office: print(off, end="\t") print()
首先,恭喜大家已经阅读完这篇文章啦!虽然我尽量以通俗简单的形式将内容体现出来,但水平有限,望大家海涵。我们下期再见,拜拜~
来源地址:https://blog.csdn.net/qq_62592360/article/details/128811157
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341