python基础之列表和字典的定义与操作

1.列表

1.列表的定义:

定义:一种将多个数据组合在一起的容器

标识符:[ ]

关键字:list

定义一个空列表

python 复制代码
lst1 = []

定义一个有值的列表,每个元素之间用英文的逗号隔开

python 复制代码
lst2 = [1, 2, 3, 4]

获取列表的类型:

python 复制代码
lst2 = [1, 2, 3, 4]  # 定义一个有值的列表,每个元素之间用英文的逗号隔开

print(type(lst2))  # <class 'list'>

2.列表的增删改查操作:

特征:有序、可变

有序:列表中的每个元素都是有索引(python中的索引,都是默认从 0 开始)

列表的取值语法:列表的变量名称[索引的值]

python 复制代码
lst1 = [1, 2, 3, 4, 5]
print(lst1[3])  # 4

获取列表的长度 -- len()

python 复制代码
lst1 = [1, 2, 3, 4, 5]  # 有几个元素,那么len长度就是多少
print(len(lst1))

列表可以倒叙输出 -- reverse()

python 复制代码
lst1.reverse()  # 先执行方法完成倒叙
print(lst1)  # 然后再去查询

例题:lst3 = [100, 3.14, True, "qsdd", [1, 2, 3, 4]]

问列表的长度是多少 长度为5 但是是列表的嵌套

问题:lst3的长度为?

python 复制代码
lst3 = [100, 3.14, True, "秋殇大大", [1, 2, 3, 4], [1, 2, 3, 4, [1, 2, 3, 4], [1, 2, 3, 4]]]
# 快捷的查看方式:数括号,括号是一一对应的,从最外层开始数
print(len(lst3))

列表的添加

列表的增加

-- append() 会把添加的值,默认加在末尾,一次只能添加一个元素

python 复制代码
lst1 = [1, 2]
lst1.append("qsdd")
print(lst1)

# 错误示例:
lst1.append("qsdd", "wwwww")  # list.append() takes exactly one argument (2 given)

列表的添加 -- insert(),通过索引来进行添加,添加的位置就是索引的位置,原有位置元素下标会依次加一

python 复制代码
lst1 = [1, 2]
lst1.insert(0, "qsdd")
print(lst1)

合并列表 -- extend() 把元素一个个的放入到新的列表中

python 复制代码
lst1 = [1, 2]
lst2 = [2, 3, 4, 5]

# print(lst1 + lst2)  # 不建议在企业中,写法太低级,看起来像是加法运算

lst1.extend(lst2)
print(lst1)

注意:数字不能迭代,bool值也不能进行迭代

列表的删除

列表的删除 -- remove() 直接删除具体的值,如果存在多个的话,默认删除最前的那个

python 复制代码
lst1 = [1, 2]
lst2 = [2, 3, 4, 5, 2]

# lst1.remove(2)
# print(lst1)

# 问题:通过remove删除lst2中的值2 ,那么会删除前面的还是后面的
lst2.remove(2)
print(lst2)

列表的删除 -- pop() 不带下标,默认删除最后一个,带下标删除具体的值

列表的修改

列表的修改 -- 列表的变量名称[下标] = 新值

python 复制代码
lst3 = [100, 3.14, True, "qsdd", [1, 2, 3, 4]]

# 问题1:把 True 改为False?
# lst3[2] = False
# print(lst3)  # [100, 3.14, False, 'qsdd', [1, 2, 3, 4]]

# 问题2:把 3 改为 10 ?
lst3[4][2] = 10
print(lst3)  # [100, 3.14, True, 'qsdd', [1, 2, 10, 4]]

字典

字典的定义:

定义:具有键值对映射关系的一组无序的数据组合

键值对映射: key : value -- key是键名,value是这个键所对应的具体值,通过key来查询

关键字:dict

标识符:{}

无序:没有索引 一个字典里的key不会重复

key:是唯一的,并且不能修改的数据,通常我们用str类型

value: 可以是任何类型的数据,可以修改

定义一个空字典

python 复制代码
dic1 = {}

定义一个有值的字典

python 复制代码
dic2 = {
    "name": "qsdd",
    "age": 18,
    "cls": 234,
    "students_name": ["二师兄", "千寻", "听风、", "自由"]
}

字典的查询 -- 字典的变量名称["key"]

python 复制代码
dic2 = {
    "name": "qsdd",
    "age": 18,
    "cls": 234,
    "students_name": ["二师兄", "千寻", "听风、", "自由"]
}

print(dic2["students_name"])  # ['二师兄', '千寻', '听风、', '自由']

字典的增删改操作:

字典的新增 -- 字典的变量名称["字典中不存在的key"] = 新值

python 复制代码
dic2 = {
    "name": "qsdd",
    "age": 18,
    "cls": 234,
    "students_name": ["二师兄", "千寻", "听风、", "自由"]
}

dic2['addr'] = "湖南长沙"
print(dic2)  # {'name': 'qsdd', 'age': 18, 'cls': 234, 'students_name': ['二师兄', '千寻', '听风、', '自由'], 'addr': '湖南长沙'}

字典的修改 -- 字典的变量名称["字典中存在的key"] = 新值

python 复制代码
dic2 = {
    "name": "qsdd",
    "age": 18,
    "cls": 234,
    "students_name": ["二师兄", "千寻", "听风、", "自由"]
}

dic2['age'] = 20
print(dic2)

问题:把 自由 的值,改为 小玉 ?

python 复制代码
dic2 = {
    "name": "七夜老师",
    "age": 18,
    "cls": 234,
    "students_name": ["二师兄", "千寻", "听风、", "自由"]
}

dic2["students_name"][3] = "小玉"
print(dic2)

字典的删除 -- pop() 不能为空,需要传入删除的key

python 复制代码
dic2 = {
    "name": "qsdd",
    "age": 18,
    "cls": 234,
    "students_name": ["二师兄", "千寻", "听风、", "自由"]
}

dic2.pop("age")
print(dic2)  # {'name': 'qsdd', 'cls': 234, 'students_name': ['二师兄', '千寻', '听风、', '自由']}

字典的删除 -- popitem() 从后往前删出

python 复制代码
dic2 = {
    "name": "qsdd",
    "age": 18,
    "cls": 234,
    "students_name": ["二师兄", "千寻", "听风、", "自由"]
}

dic2.popitem()
print(dic2)  # {'name': 'qsdd', 'age': 18, 'cls': 234}

字典的清空 -- clear()

相关推荐
红色石榴4 分钟前
Qt中文乱码解决
开发语言·qt
Htht1115 分钟前
【Qt】实现模拟触摸屏 上下滑动表格 的两种方式
开发语言·qt
A 八方6 分钟前
Python MongoDB
开发语言·python·mongodb
sz66cm2 小时前
Python基础 -- 使用Python实现ssh终端并实现数据处理与统计功能
开发语言·python·ssh
liangbm33 小时前
MATLAB系列02:MATLAB基础
开发语言·数据结构·笔记·matlab·教程·工程基础·高级绘图
ac-er88884 小时前
如何在Flask中实现国际化和本地化
后端·python·flask
Adolf_19934 小时前
Flask-WTF的使用
后端·python·flask
空城皆是旧梦4 小时前
python爬虫初体验(一)
爬虫·python
藓类少女4 小时前
正则表达式
数据库·python·mysql·正则表达式
change95134 小时前
PHP纯离线搭建(php 8.1.7)
开发语言·php