Python 学习笔记 - 03 - 列表

好记性不如烂笔头.

系统:Win10 64bit

Python: 3.9.1

定义、访问、排序、翻转、增删改

  • stu1 = "学生1"
    stu2 = "学生2"
    stu3 = "学生3"
    stu4 = "学生4"
    stu5 = "学生5"
    names = [stu1, stu2, stu3, stu4, stu5]
    scores = [50, 60, 70, 80]
    
    print('\n【访问列表】')
    print(names)
    print(scores)
    print(names[0], names[3], names[-1], names[-3])
    
    print('\n【排序】')
    # 永久排序  默认从小到大
    names.sort()
    scores.sort()
    print(names)
    print(scores)
    names.sort(reverse=True)
    scores.sort(reverse=True)
    print(names)
    print(scores)
    
    # 临时排序
    print(sorted(names))
    
    print('\n【翻转】')
    names.reverse()
    print(names)
        
    print('\n【截取列表】')
    print(names[0:3], names[:3], names[1:])
    print(names[:])
    
    print('\n【改数据】')
    names[2] = '赵云2'
    print(names)
    
    print('\n【末尾追加数据】')
    names.append('学生6')
    print(names)
    
    print('\n【插入数据】')
    names.insert(0, '黄忠0')
    print(names)
    
    print('\n【删除数据】')
    del(names[2])
    print(names)
    del names[0]
    print(names)
    names.remove('学生6')
    print(names)    
    
    print('\n【pop弹出数据】')
    print(names.pop())
    print(names)
    print(names.pop(1))
    print(names)
    
  • 输出结果为:

    【访问列表】
    ['学生1', '学生2', '学生3', '学生4', '学生5']
    [50, 60, 70, 80]
    学生1 学生4 学生5 学生3
    
    【排序】
    ['学生1', '学生2', '学生3', '学生4', '学生5']
    [50, 60, 70, 80]
    ['学生5', '学生4', '学生3', '学生2', '学生1']
    [80, 70, 60, 50]
    ['学生1', '学生2', '学生3', '学生4', '学生5']
    
    【翻转】
    ['学生1', '学生2', '学生3', '学生4', '学生5']
    
    【截取列表】
    ['学生1', '学生2', '学生3'] ['学生1', '学生2', '学生3'] ['学生2', '学生3', '学生4', '学生5']
    ['学生1', '学生2', '学生3', '学生4', '学生5']
    
    【改数据】
    ['学生1', '学生2', '赵云2', '学生4', '学生5']
    
    【末尾追加数据】
    ['学生1', '学生2', '赵云2', '学生4', '学生5', '学生6']
    
    【插入数据】
    ['黄忠0', '学生1', '学生2', '赵云2', '学生4', '学生5', '学生6']
    
    【删除数据】
    ['黄忠0', '学生1', '赵云2', '学生4', '学生5', '学生6']
    ['学生1', '赵云2', '学生4', '学生5', '学生6']
    ['学生1', '赵云2', '学生4', '学生5']
    
    【pop弹出数据】
    学生5
    ['学生1', '赵云2', '学生4']
    赵云2
    ['学生1', '学生4']
    
    请按任意键继续. . .
    

多维列表和取得列表长度

  • L = ['Google', 'Runoob', 'Taobao']
    names = [[1, 2, 3], ['a', 'b', 'c'], ['名字1', '名字2', '名字3']]
    print(names[0][1], names[1][2])
    print(len(names[0]), len(names))
    print(L.index('Taobao'))
    
    newL = [2, 5, 6, 2]
    # 逐个元素添加
    L.extend(newL)
    # 整体作为一个元素添加
    L.append(newL)
    print(L)
    
    # 有缩进就视为循环体,无缩进认为是循环外语句
    for item in L:
        print(item)
    
    # 生成数字列表
    print(list(range(3,10)))
    print(list(range(3,10,2)))
    print(list(range(3,10,3)))
    
    # 让数字列表中的元素变成元素的2次方
    l2 = list(range(1,11))
    l3 = []
    for item in l2:
        l3.append(item ** 2)
    print(l3)
    
    l2 = []
    for item in range(1,11):
        l2.append(item ** 2)
    print(l2)
    
    l2 = list(range(1,11))
    for item in l2:
        l2[item-1] = item ** 2
    print(l2)
    
    l2 = list(range(1,11))
    for item in range(0, len(l2)):
        l2[item] = l2[item] ** 2;
    print(l2)
    
    print(min(l2))
    print(max(l2))
    print(sum(l2))
    
    # 简写
    l2 = [t ** 2 for t in range(1,11)]
    print(l2)
    
    # 如何正确复制列表
    # 复制一份
    l3 = l2[:]
    print(l3)
    # 复制两份
    l3 = l2 * 2
    print(l3)
    
    # 合并列表
    l1 = [1, 2, 3, 4]
    l2 = [5, 6, 7, 8]
    l1.extend(l2)
    l1 += l2
    print(l1)
    
    
    # 元祖  数据不可修改 使用起来跟列表一样
    a = (1, 2, 3)
    
  • 输出结果为:

    2 c
    3 3
    2
    ['Google', 'Runoob', 'Taobao', 2, 5, 6, 2, [2, 5, 6, 2]]
    Google
    Runoob
    Taobao
    2
    5
    6
    2
    [2, 5, 6, 2]
    [3, 4, 5, 6, 7, 8, 9]
    [3, 5, 7, 9]
    [3, 6, 9]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    1
    100
    385
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    [1, 2, 3, 4, 5, 6, 7, 8, 5, 6, 7, 8]
    
    请按任意键继续. . .
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值