一、列表(List)

列表的定义:

(1)列表(List)是Python中使用最频繁的数据类型,在其它语言中通常叫“数组”。

(2)列表用于存储一串信息。

(3)列表用“[ ]”定义,数据之间用“,”分隔。

(4)列表的索引从0开始。

练习:

(1)定义列表。

例如:定义name_list列表,列表中包含 zhangsan、lisi、wangwu。

name = ["zhangsan", "list", "wangwu", "小王"]

(2)显示列表。

例如:显示name_list列表中的各个名字,print(name_list)

print(name)

(3)知道索引号取值。

例如:显示索引号为2的姓名,print(name_list[2])

print(name[1])

(4)知道值取索引号。

例如:显示lisi的索引号,print(name_list.index("lisi"))

print(name.index("list"))

(5)修改内容。

例如:将lisi修改为zhaoliu, name_list[1]="zhaoliu"

name[1] = "zhaosi"

(6)在列表中增加内容。

append方法:在列表的末尾增加数据,例如:name_list.append("小明")

insert方法:在列表的指定索引位置插入数据,例如,name_list.insert(1,"小红")

extend方法:把其它列表的全部内容插入到当前的列表末尾,

例如:先定义列表 temp_list=["关羽","张飞","赵云","魏延"]       name_list.extend(temp_list)

# 增加内容
name.append("zhaoliu")
print(name)
# 插入
name.insert(1, "xiaoming")
print(name)
# 插入内容至列表尾端
temp_name = ["小红", "小刚", "小王", "小李"]
name.extend(temp_name)
print(name)

(7)删除列表中的内容。

      remove方法:删除列表中的指定数据。例如:删除name_list列表中的wangwu,name_list.remove("wangwu"),(注:若有多个相同的数据,则删除第一个指定的数据)

pop方法:默认删除列表中的最后一个元素,例如name_list.pop(),也可以指定要删除的元素的索引,例如:name_list.pop(2)

clear方法:清空列表,所有数据清除。

# 删除列表内容
name.remove("zhaosi")
print(name)
# pop方法删除列表最后一个元素,删除指定索引
name.pop()
print(name)
# 删除指定索引
name.pop(1)
print(name)

(8)统计列表的长度(元素的个数),使用len函数。

例如:print(len(name_list))

print(len(name))

(9)统计列表中某个数据出现的次数,使用count方法。

例如:print(name_list.count("wangwu"))

icount = name.count("小王")
print(icount)

(10)列表的升序、降序、逆序。

例如:定义列表score_list = [10, 90, 55, 92, 45, 87, 99, 100, 66, 35, 89, 100]

升序方法。score_list.sort()

降序方法。score_list.sort(reverse=True)

逆序方法。score_list.reverse()

score_list = [10, 90, 55, 92, 78, 90, 24, 78, 62, 19, 84, 100, 39, 57]
print(score_list)
# 升序
score_list.sort()
print(score_list)
# 降序
score_list.sort(reverse=True)
print(score_list)
# 列表反转(逆序)
score_list.reverse()
print(score_list)

结果:

(11)迭代遍历列表。

例如:使用for迭代遍历name_list,并输出。

name_list = ['zhangsan', 'lisi', 'wangwu']for my_name in  name_list:print("名字是:%s" % my_name)

二、元组(Tuple)

元组的定义:

(1)元组表示多个元素组成的序列。

(2)元素之间用“,”分隔。(注意:列表也是用","分隔)

(3)元组用"( )"定义。(注意:列表是用“[  ]”定义

(4)元组与列表类似,不同之处在于元组的元素不能进行增、删、改的操作,列表的元素能进行增、删、改的操作。

(5)元组的索引从0开始。(注意:列表的索引也是从0开始)

(6)列表一般存储相同类型的数据,元组可以存储不同类型的数据,元组有特定的应用场景。

元组与列表区别:

元组 列表
分隔 “,” “,”
定义 "( )"

“[  ]”

元素 不能进行增、删、改 能进行增、删、改
索引 从0开始 从0开始
存储数据 可以是不同类型 一般是相同类型
有特定的应用场景

练习:

(1)定义一个元组student,包含学号1001,姓名zhangsan,年龄18,成绩96.5 。

student = ("1001", "zhangsan", 18, 96.5)

(2)取相应索引的值

print(student[0])

(3)已经知道数据的值,取该数据在元组中的索引号

print(student.index("1001"))

(4)统计相同数据出现的次数

print(student.count("zhangsan"))

(5)统计元组中的元素的个数

print(len(student))

(6)使用for循环遍历元组。(注意:在实际的开发中,除非能确认元组中的数据类型,否则针对元组的循环遍历需求不是很多。)

    for stu_info in student:print(stu_info)

由于元组中的数据类型通常是不同的,若要使用格式字符串拼接stu_info变量输出,不方便或者出错。

例如:

    for stu_info in student:print("学生的信息是:%d" %stu_info)

(7)格式化字符串和元组

print("学号:%s,姓名:%s,年龄%d,成绩%.1f" %("1001", "zhangsan", 18, 96.5))

可以替换为:

student = ("1001", "zhangsan", 18, 96.5)print("学号:%s,姓名:%s,年龄%d,成绩%.1f" % student)

(8)元组和列表之间的转换:

用list函数把元组转换为列表,用tuple函数把列表转换为元组。

练习:

number = (1,2,3,4,5)print(type(number))num1 = list(number)print(type(num1))

结果:


number =[1,2,3,4,5]print(type(number))num2= tuple(number)print(type(num2))

结果:


三、字典(dictionary)

字典定义:

  1. 字典用{ }定义。(注意:元组用"( )"定义。列表是用“[  ]”定义)
  2. 字典使用“键值对”存储数据,键值对之间使用“,”分隔。(注意:最后的键值对后面不需要加",")
  3. 键(key)是索引,键必须是唯一的;
  4. 值(value)是数据;
  5. 键和值之间使用“:”连接;
  6. 值可以是任何的数据类型,但键只能使用字符串、数字或者元组。

字典(dictionary)和列表的区别:

(1)列表是有序的对象集合

(2)字典是无序的对象集合

练习:

(1)定义一个学生字典。

student01 = {"name":"zhangsan","age":18,"性别":"男","语文":88,"数学":95,"英语":72}            

(2)取某个键的值。

注:使用[],字典[]里面的内容是键,而列表和元组[]里面的内容是索引号。

print(student01["性别"])

(3)增加/修改。

注:如果键不存在,则新增键值对。如果键存在,则修改已经存在的键值对。

student01["学号"] = "20201001"student01["name"] = "lisi"

(4)删除。(使用pop方法删除键)

student01.pop("age")

(5)统计键值对的数量。(使用len函数)

print(len(student01))

(6)合并字典。(注:如果被合并的字典中包含已经存在的键值,则会覆盖原来的键值对

school_dict = {"学校":"广东88888大学","二级学院":"电信学院"}student01.update(school_dict)print(student01)

(7)清空字典

student01.clear()print(student01)

(8)循环遍历

for i in student01:print("%s是:%s" % (i, student01[i]))

四、列表和字典的应用场景

使用字典的多个键值对存储描述一个物体的相关信息,将多个字典放在一个列表中,对列表进行操作和遍历。

student = [{"name": "张三","sex": "男","phone": "13811111111"},{"name": "李四","sex": "女","phone": "13822222222"},{"name": "王五","sex": "男","phone": "13833333333"}
]
print(student)
# 插入新数据
student.append({"name": "赵六","sex": "女","phone": "13944444444"})
# 删除数据
student.remove({"name": "张三","sex": "男","phone": "13811111111"})
print(student)
# 遍历列表
for i in student:print(i)
# 或者
for i in student:for j in i:print("%s是:%s" % (j, i[j]))print()

Python day04——列表、元组、字典相关推荐

  1. python中列表 元组 字典 集合的区别

    参考文章:python中列表 元组 字典 集合的区别

  2. Python 字符串/列表/元组/字典之间的相互转换 - Python零基础入门教程

    目录 一.字符串 str 与列表 list 1.字符串转列表 2.列表转字符串 二.字符串 str 与字典 dict 1.字符串转字典 2.字典转字符串 三.列表 list 与字典 dict 1.列表 ...

  3. python入门——列表+元组+字典+集合

    列表 列表是最常用的python数据类型,它可以作为一个方括号内的逗号分隔值出现. 列表的数据项不需要具有相同的类型 1.列表嵌套(相当于二维数组) a=["b",'c','d'] ...

  4. python列表元组字典集合实验心得_python学习小总结(列表、元组、字典、集合、字符串)...

    ---恢复内容开始--- 一.列表(list) 1.添加 append():追加,在列表末尾添加元素. 列表名.append(添加的元素) extend():扩展,在列表末尾添加元素. 列表名.ext ...

  5. Python列表,元组,字典的区别

    Python列表,元组,字典的区别: 1.元组是不可变的, 而列表.字典是可变的.元组是不可变对象,对象一旦生成,它的值将不能更改:列表是可变对象,对象生成后,可以对其元素进行更改.添加.删除.清空. ...

  6. python 高级变量类型(列表/元组/字典/字符串)

    前言 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) 真 True 非 0 数 -- 非零即真 假 False 0 复数型 ...

  7. Python基础之day03-字符串,列表,元组,字典

    Python基础之day03-字符串,列表,元组,字典 文章目录 Python基础之day03-字符串,列表,元组,字典 一.字符串 二.下标与字符串切片 三.列表 四.元祖 五.字典 六.公用方法 ...

  8. python_列表——元组——字典——集合

    列表--元组--字典--集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...

  9. python怎么把列表变成字典_在Python中将列表转换为字典

    在Python中将列表转换为字典 假设我在Python中有一个列表b,其条目方便地映射到字典. 每个偶数元素代表字典的键,以下奇数元素是值 例如, a = ['hello','world','1',' ...

最新文章

  1. 【算法笔记】竞赛图(有向完全图)(相关题型总结)
  2. PCA、碎石图、PCA+正确的维度个数、增量PCA(IncrementalPCA)、随机PCA(Randomized PCA)、KernelPCA
  3. 品牌故事第11期之IBM:连亏168亿都逆袭,蓝色巨人的百年兴衰史
  4. JavaScript 数组拼接打印_JavaScript 数组方法
  5. [GO语言基础] 二.编译运行、语法规范、注释转义及API标准库知识普及
  6. 微软:Vista SP2是最安全的操作系统
  7. 如何使用Python脚本
  8. MsSql正反表达式
  9. 一位00后前端2年经验的成长历程
  10. 如何不重启热更新线上 Java 代码?
  11. mysql分库分表 mycat_你们要的MyCat实现MySQL分库分表来了
  12. c语言ABCDEF前中后序遍历,c语言实现二叉树及前中后序遍历
  13. 学习笔记-安全-MAC地址攻击
  14. 如何申请成为企业微信,并成为第三方服务商
  15. 微服务Spring Boot 整合 Redis 实现好友关注 – Feed流实现推送到粉丝收件箱
  16. Masonry 比例设置multipliedBy与dividedBy区别
  17. MySQL 异步查询提高查询速度
  18. 机器学习实战 决策树(附数据集)
  19. C语言的for循环转verilog,Verilog for 循环语句
  20. 二叉树的基本操作的实现

热门文章

  1. c#显示mjpg-stream流
  2. 配置腾讯云cdn教程
  3. PHP的json操作
  4. 打开资源文件时显示说没有安装这个ActiveX控件 {648A5600-2C6E-101B-82B6-000000000014
  5. My97DatePicker设置
  6. 【自考】计算机网络原理概述
  7. python--- end=“ , 单独的一行print()是什么意思
  8. E+H超声波物位仪FMU41-4RB2C2
  9. 社群人脉系统源码软件开发
  10. 关于Python中字典的赋值