python的基础语法(组合数据类型) - Go语言中文社区

python的基础语法(组合数据类型)


python的基础语法(组合数据类型)

一,list列表

python 语言中使用组合数据类型进行操作,最常见的组合数据类型之一~就是 list 列表。

1 什么是列表?

列表是组合数据类型中的一种,可以按照有顺序的方式、存储不同数据类型的可以重复的 多个数据。

2 列表怎么声明?

python 中通过 list 关键词表示列表
在这里插入图片描述
在这里插入图片描述

3 列表的操作

列表的常见操作:列表作为一个数据容器,存放大量的数据
生活中/代码中,对于容器中的数据的操作方式,固定的四种方式
⚫ 增加数据
⚫ 修改数据
⚫ 删除数据
⚫ 查询数据
◼ 遍历数据[for 循环遍历数据,将所有的数据依次查看]

(1)增加数据:
在这里插入图片描述

names = list()                        # 声明一个空列表

names.append("碧瑶")                 # 末尾追加一个数据[可以是一个整数/字符串/列表]
#  names ['碧瑶']


names.append("陆雪琪")               # 末尾追加一个数据
for x in names:
    print(x)
#  names ['碧瑶', '陆雪琪']


names.append([1, 2])                 # 末尾追加一个数据,这里追加了一个列表
#  names ['碧瑶', '陆雪琪', [1, 2]]


names.insert(0, "青云门")           # 指定位置[编号]增加一个数据
# names ['青云门', '碧瑶', '陆雪琪', [1, 2]]


names.insert(1, "天音寺")           # 指定位置增加一个数据
# names ['青云门', '天音寺', '碧瑶', '陆雪琪', [1, 2]]


names.extend(["焚香谷", "鬼王宗"])   # 末尾追加多个数据,将追加的列表拆分后依次追加
# names ['青云门', '天音寺', '碧瑶', '陆雪琪', [1, 2], '焚香谷', '鬼王宗']

(2)修改数据:
在这里插入图片描述

names = ['青云门', '天音寺', '碧瑶', '陆雪琪', [1, 2], '焚香谷', '鬼王宗']
names[4] = "合欢派"



# names ['青云门', '天音寺', '碧瑶', '陆雪琪', '合欢派', '焚香谷', '鬼王宗']

(3)删除数据:
在这里插入图片描述

names = ['青云门', '天音寺', '碧瑶', '陆雪琪', '万毒门', '焚香谷', '鬼王宗', '鬼王宗'] 
names.remove("鬼王宗") 
# names ['青云门', '天音寺', '碧瑶', '陆雪琪', '万毒门', '焚香谷', '鬼王宗'] 移除了第一个查询到的

names.remove("碧瑶") 
# names ['青云门', '天音寺', '陆雪琪', '万毒门', '焚香谷', '鬼王宗'] 
names.pop(6)    # '鬼王宗' 
# names ['青云门', '天音寺', '陆雪琪', '万毒门', '焚香谷']

names.clear() 

(4) 查询数据 :
在这里插入图片描述

names = ['青云门', '天音寺', '碧瑶', '陆雪琪', '合欢派', '焚香谷', '鬼王宗']

for n in names:
    print("内容:", n)
"""
内容: 青云门
内容: 天音寺
内容: 碧瑶
内容: 陆雪琪
内容: 合欢派
内容: 焚香谷
内容: 鬼王宗
"""

names.index("合欢派")   # 合欢派在列表中的索引位置:4

names[4] = "万毒门"

names.append("鬼王宗")
# names ['青云门', '天音寺', '碧瑶', '陆雪琪', '万毒门', '焚香谷', '鬼王宗', '鬼王宗']

names.count("鬼王宗")  # 鬼王宗个数:2 
names.count("天音寺")  # 天音寺个数:1

(5) 其他操作:
在这里插入图片描述

二,tuple元组

1、 什么是元组|元组的特点

元组也是组合数据类型中的 1 种,可以有顺序存放可以重复的可以是不同数据类型的 多个数据,数据一旦存放到元组中~不允许改动!

元组是一种特殊的列表

2、 元组的声明

python 中通过 tuple 表示元组
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 元组的操作

在这里插入图片描述
元组的适用场景:比如项目中一些固定不能修改的数据,可以直接定义在元组中

# 将项目中一些固定不能改动的数据,直接定义到元组中使用! 
roles = ("游客", "普通会员", "VIP 会员", "管理员") # 使用到角色的时候,可以直接从 roles 变量中或者角色 roles[3]  -> 管理员 
 
# 不推荐在项目中手工填写:管理员 
# 项目是多个人开发的~ 手工填写管理员~ 不同的人就有可能填写不同的名称 
# 开发 A:管理员;开发 B:Admin;开发 C:管理
# 项目中的数据~不一致!严重的问题

三,set集合

1. 什么是集合?

集合 set 是组合数据类型中的一种,集合中可以存放没有顺序的、不可以重复的、可以是不同数据类型的多个数据

2. 集合的声明

在 python 中通过 set 表示集合
在这里插入图片描述
在这里插入图片描述

3. 集合的操作

(1)增加操作:

s = set() 
s.add("张宇") 
s.add("汤家凤") 
# s {'张宇', '汤家凤'} 

(2)复制操作:

s2 = s.copy() 
# s2 {'张宇', '汤家凤'} 

(2)删除操作:

s = {'张宇', '汤家凤', '李永乐'} 
s.pop() # 随机删除	'汤家凤' 

s.remove("x") # 指定删除
# 保存信息Traceback (most recent call last):   File "<stdin>", line 1, in <module> KeyError: 'x'

>>> s.discard("x")	# 指定删除

’pop’, 随机删除一个集合中的数据[集合中的数据没有顺序]

’remove’, 删除一个指定的数据,如果数据不存在就会报错

’discard’, 删除一个指定的数据,如果数据不存在什么都不做

三,dict字典

1. 什么是字典?

字典是项目开发过程中使用频率最高的一个组合数据类型,可以存放键值对(key:value) 数据,其中 key 不能重复,value 是可以重复的,存放的数据没有顺序

2. 字典的声明

在这里插入图片描述
在这里插入图片描述

2. 字典的操作

(1)查询获取数据
在这里插入图片描述

dct = {'username': 'damu', 'nickname': '大牧莫邪'} 

dct.keys() # dict_keys(['username', 'nickname'])	获取键

dct.values() # dict_values(['damu', '大牧莫邪'])  获取所有值

dct.get("username") # 获取指定键的值'damu' 

dct["nickname"] # 获取指定键的值'大牧莫邪' 

(2)删除数据

dct = {'username': 'damu', 'nickname': '大牧莫邪'}
 
dct.popitem()		 # 随机删除
print(dct.items())	 #运行后('nickname', '大牧莫邪') 被删了

# dct = {'username': 'damu'} 

dct.pop("username")  # 指定按键删除

dct.pop(k) 删除 k 对应的键值对,等价于 del dct[k]
dct.popitem() 随机删除一个键值对

(3)修改数据:

dct = {}
dct.setdefault("english_teacher", "刘晓艳")
# 如果 k 不存在,增加 K:v 到字典中,如果 k 存在什么都不做  dct = {'english_teacher': '刘晓艳'}


dct.setdefault("english_teacher", "燕子")
# dct = {'english_teacher': '燕子'}

dct.update({"math_teacher": "李刚"})
# dct = {'english_teacher': '燕子', 'math_teacher': '李刚'}

dct.update({"math_teacher": "高昆仑"})
# dct = {'english_teacher': '燕子', 'math_teacher': '高昆仑'}

(4)增加数据:

dct = {'english_teacher': '燕子', 'math_teacher': '高昆仑'}

dct["political_teacher"] = '徐涛'
# 只有 key 在字典中不存在的情况下,新增一个键值对数据

print(dct.items())
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/raojiaxing_/article/details/105006252
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢