Python_day03

列表list:(打了激素的数组)

数组是只能存储同一种数据类型的结构;
数组: scores[43] = [12, 12.0, "hello"]



定义元组



定义列表



元组是不可变数据类型,不能修改元素;

列表是可变数据类型,可以修改元素;



分析列表的特性(与元组对比)

1>.索引

# 正向索引

# 反向索引

# 拿出列表最后一个元素, 最后一个元素是列表, 再拿出列表的第三个元素,如下 :



2>.切片

# 去掉列表的第一个元素

# 逆序显示



3>.重复, 连接



# 不建议这样连接两个列表,后面有效率更高的方法 ;



4>.成员操作符



列表的增删改查

1>.增

ip 白名单

# 追加元素到列表的最后



# 增加元素到列表的指定位置



# iterable 代表可迭代的;

# 目前学习的可迭代对象有 : str, list, tuple

# 增加多个元素到列表最后



2>.改

# 通过列表的索引,对列表某个索引值重新赋值;



3>.查

# 统计某个元素在列表中出现的次数

# 找到某个值在列表中的索引值



4>.删

# 删除列表中遇到的第一个 value 值

# 删除列表中第 i 个索引值



# 删除除了第一个元素之外的其他索引值

# 删除列表对象





# 删除指定索引对应的值,默认是最后一个元素

# 删除列表的第一个索引(li.pop(0)



5>.其他的排序及逆转

# 排序,如果说都是数字,按照数字大小排序 ;

# 是字母的话,按照 ASCII 码来排序;

# **** 如何查看对应的 ASCII 码 ? ord('a')



# 逆转



列表练习

知识点学习:

python中特有的while....else...语句

如果满足while后面的语句,执行while循环的程序, 如果不满足,执行else里面的程序.

提示: 用户名和密码一一对应

users = ["user1", "user2", "user3"]

passwords = ["123", "456", "789"]






列表构建栈和队列数据结构

1>.栈

栈是先进后出(LIFO-first in last out);

类似于往箱子里面放书;

代码实现如下: (实际应用中这样太麻烦,将来会用类实现)



2>.队列

队列是先进先出(FIFO):

类似于去餐厅买饭排队;

"""
queue = [1, 2,3]

队列操作

1). 入队:enQueue

2). 出队:

3). 查看队列

4). 退出

"""


3>.列表内置方法

cmp

min, max

zip

enumerate




字典(dict)

字典创建

1>.赋值创建字典

# 赋值创建字典 , key-value , 键值对




2>.通过工厂函数创建字典

# 通过工厂函数创建字典



# 通过字典的 fromkeys 方法创建字典,所有元素有一个默认值;

# 如果没有指定默认值,默认为 None;

# 给每个元素设置默认值为 "123";



应用案例: 生成多个银行卡号,并初始化密码为"000000"





分析字典的特性(跟元组和列表比较)

字典不能索引和切片,因为字典是无序的数据类型;

字典不支持重复和连接;

字典支持成员操作符: 判断字典的key值是否在字典中存在; in, not in


字典的增删改查
1>.增

·字典名[key] = value

·d.update(a=1, b=2)

·d.update({'a':1, 'b',2})

·d.setdefault('a', 1)

** 重点: setdefault 和 update方法的不同

# 通过字典名 [key]=value, 将 key-value 添加到字典中



# update 方法实现添加: key 存在,覆盖 value 值, 否则,添加



# setdefault 实现添加: key 存在,不覆盖 value 值, 否则,添加



2>.改

·字典名[key]=value

·d.update({'a':2, 'b':3})

·d.update(a=2, b=3)


3>.查

·查看key值;

·查看value值;

·查看key-value键值对;

·查看key是否存在;


# 查看 key 值

# 查看 value 值



# 查看 key-value 键值对



# 查看 key 是否存在

# 查看指定 key 对应的 value 值;如果 key 不存在,不报错; 如果存在,返回 value 值;

# services['ftp'] 如果 key 不存在,直接报错



4>.删

·d.pop(key) ---> 删除指定 key 的字典元素;

·d.popitem() ---> 随机删除字典的 key-value 元素;

·del d[key] ---> 删除指定 key 的字典元素;

·d.clear() ---> 清空字典元素;





5>.循环遍历字典



# 默认情况下遍历字典的 key 值





字典应用

应用1: 通过字典实现case语句

·目前python不支持case语句;

·实现case语句的两种方式:

1>.if...elif...elif...else...

2>.字典实现









  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值