谈谈我所知道的列表(一)

条件嵌套

  • python语句中允许在一个条件语句中嵌套另一个条件语句
  • 语法示例:
i = 0
while i < 5:
    j = 0
    while j < 5:
        print('*', end='')
        j += 1
    print()
    i += 1
# *****
# *****
# *****
# *****
# *****

i = 0
# 外层循环控制图形的高度
while i < 6:
    j = 0
    # 内层循环控制图形的宽度
    while j < i:
        print('*', end='')
        j += 1
    print()
    i += 1
# *
# **
# ***
# ****
# *****

# 九九乘法表
i = 1
# 创建一个外层循环控制宽度
while i < 10:
    j = 1
    # 控制内层数字和宽度
    while j < i + 1:
        print(i*j, end=' ')
        j += 1
    print()
    i += 1
1 
2 4 
3 6 9 
4 8 12 16 
5 10 15 20 25 
6 12 18 24 30 36 
7 14 21 28 35 42 49 
8 16 24 32 40 48 56 64 
9 18 27 36 45 54 63 72 81 

break和continue

  • break可以用来跳出当前循环语句,包括else语句
i = 0
while i < 6:
    i += 1
    if i == 2:
        break
    print(i)
else:
    print('hello')
结果:1
  • continue用来跳过当初循环
i = 0
while i < 6:
    i += 1
    if i == 2:
        continue
    print(i)
else:
    print('hello')
结果:1
3
4
5
6
hello

列表

序列

  • 序列是python中最基本的一种数据结构。序列用于保存一组有序的数据,所有的数据在序列中都有唯一的位置(索引),并且序列中的数据会按照添加的顺序来分配索引。
  • 数据结构指计算机中数据的存储方式。
  • 分类:1.可变序列(列表 list 、字典 dict);2.不可变序列(字符串 str、元组 tuple)

列表(list)

  • 列表是python中的一个对象。列表中存储的数据称为元素,列表可以保存任意的对象。可以通过索引(index)来获取列表中的元素。索引是从0开始的,列表第一个位置就是0,第二个位置就是1,以此类推。列表的索引值可以是负数。如果索引值是负数,则从后向前取值。len() 获取列表的长度(列表元素的个数),获取长度的值,列表的最大索引值+1。
# 创建一个列表
lst = [1, 'python', None, True, [1, 2, 3]]
# 通过索引来获取列表中的元素
print(lst[-2])
结果:True
# 获取列表的长度
print(len(lst))
结果:5
# 超出索引范围会报错
print(lst[5])
结果:print(lst[5])
IndexError: list index out of range(超出最大索引值)
  • 作用:
    • 保存多个有序数据
    • 是存储对象的对象
  • 列表的使用:通过[]来创建一个空列表

切片

  • 切片是指从现有的列表中获取一个子列表
  • 通过切片来获取指定的元素 (切片中的终止位置可以超出索引范围)
  • 语法:列表名[起始位置:终止位置:步长]
heroes = ['帝俊', '昊天', '东皇太一', '盘古', '女娲', '伏羲']
print(heroes[1:4])  
结果:['昊天', '东皇太一', '盘古']
  • 获取的元素中包括起始位置的元素但不包括终止位置的元素
  • 切片中的两个位置同时出现正数和负数的时候,并不是由正数到0再到负数,而是由正数与负数所对应的元素之间进行切片,即切片中的每一个元素都具有唯一性
  • 步长一定要符合算数规则,否则切片出来就成了空列表。符合规则[7:1:-2] ; 不符合规则 [7:1:2]
  • 省略部分的情况:
    • 省略起始位置,则起始位置默认为0,即从第一位根据步长取到终止位置的前一个元素
    • 省略终止位置,则终止位置默认为最后一位,即从起始位置根据步长取到最后一位。注意:最后一位要取!!!
    • 起始位置和终止位置全部省略,默认为取整个列表,即从第一位取到最后一位
    • 步长被省略,默认步长为1。步长为n即表示所取得两个元素之间间隔n-1个元素
  • 步长不能为0,但可以是负数
heroes = ['帝俊', '昊天', '东皇太一', '盘古', '女娲', '伏羲']
print(heroes[1:4:2])
结果:['昊天', '盘古']
# 省略起始位置
print(heroes[:5])
结果:['帝俊', '昊天', '东皇太一', '盘古', '女娲']
# 省略终止位置
print(heroes[2:])
结果:['东皇太一', '盘古', '女娲', '伏羲']
# 步长不符合算数规则
print(heroes[7:0])
结果:[]
# 将原列表部分倒过来
print(heroes[7:0:-1])
结果:['伏羲', '女娲', '盘古', '东皇太一', '昊天']
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值