zoukankan      html  css  js  c++  java
  • Python学习day4(列表,元组,range()方法)

    列表:

    列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:

    li = [‘hyg’,123,Ture,(1,2,3,’hum’),[1,2,3,’小明’,],{‘name’:’lyy’}]

    列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。
    列表中通过索引,切片,切片+步长操作与字符串中一样

    列表的增、删、改、查及其他方法

    # append  追加
    li = [1, 3, 'hyg', [2], 5]
    li.append(9)
    print(li)
    #显示:[1, 3, 'hyg', [2], 5, 9]
    
    #insert 按索引插入在钙索引前
    li = [1, 3, 'hyg', [2], 5]
    li.insert(1, '宝元')
    print(li)
    #显示:[1, '宝元', 3, 'hyg', [2], 5]
    
    # extend  迭代着追加
    li = [1, 3, 'hyg', [2], 5]
    li.extend('abc')
    print(li)
    #显示:[1, 3, 'hyg', [2], 5, 'a', 'b', 'c']
    
    li = [1, 3, 'hyg', [2], 5]
    li.extend([111, 222, 333])
    print(li)
    #显示:[1, 3, 'hyg', [2], 5, 111, 222, 333]
    

    # pop 按照索引去删除(有返回值)
    li = [1, 3, 'hyg', [2], 5]
    ret = li.pop(1)
    print(ret) # 返回值为删除的元素
    print(li)
    #显示:3
    #    [1, 'hyg', [2], 5]
    
    # remove 按照元素删除(无返回值)
    li = [1, 3, 'hyg', [2], 5]
    li.remove('hyg')
    print(li)
    #显示:[1, 3, [2], 5]
    
    # clear 清空整个列表
    li = [1, 3, 'hyg', [2], 5]
    li.clear()
    print(li)
    #显示:[]
    
    del
    # 可以按照索引删除
    li = [1, 3, 'hyg', [2], 5]
    del li[0]
    print(li)
    #显示:[3, 'hyg', [2], 5]
    # 可以按照切片删除(可以加步长)
    li = [1, 3, 'hyg', [2], 5]
    del li[:2]
    del li[3:]
    del li[1::2]
    print(li)
    # 可以在内存级别删除整个列表
    li = [1, 3, 'hyg', [2], 5]
    del li
    print(li)
    #这个列表在内存中已经不存在了,运行后会报错。
    

    # 按照索引改
    li = [1, 3, 'hyg', [2], 5]
    li[2] = 'lyy'
    li[-1] = '泰迪'
    #按照切片(加步长)
    # 按照切片
    li[:2] = 'sbsbsb'
    li[:4] = [11,22,33,44,55,66,77]
    # 按照切片 + 步长  一一对应
     li[1:3] = 'af'
    print(l1)
    

    # 索引,切片,切片+步长
    #for 循环
    li = [1, 3, 'hyg', [2], 5]
    for i in li:
        print(i)
    

    其他方法

    #count(数)(方法统计某个元素在列表中出现的次数)
    a = ['q', 'w', 'q', 'w', 'o', 'p']
    print(a.count('q'))
    #index(方法用于从列表中找出某个值第一个匹配项的索引位置)
    a = ['q', 'w', 'q', 'w', 'o', 'p']
    print(a.indext('w'))
    #sort (方法用于在原位置对列表进行排序)
    #reverse (方法将列表中的元素反向存放)
    a = [2,1,3,4,5]
    a.sort()#从小到大 他没有返回值,所以只能打印a
    a.sort(reverse=True)#从大到小
    a.reverse()#反转,他也没有返回值,所以只能打印a
    

    列表的嵌套

    #l3 = ['alex', 'wusir', ['taibai', 99, 'ritian'], 20]
    # 1, 找到alex的e元素。
    # s1 = l3[0]
    # print(s1)
    # print(s1[2])
    # s2 = l3[0][2]
    # print(s2)
    # 2, 将wusir变成大写。
    # w1 = l3[1]
    # w2 = w1.upper()
    # l3[1] = w2
    # print(l3)
    
    # l3[1] = 'WUSIR'
    # l3[1] = l3[1].upper()
    # print(l3)
    
    # 3, 给此列表['taibai',99,'ritian'] 追加一个元素,'文周'
    # print(l3[2])
    # l3[2].append('文周')
    # print(l3)
    # 4,将 'taibai' 首字母大写。
    # print(l3[2][0])
    # s1 = l3[2][0].capitalize()
    # # print(s1)
    # l3[2][0] = s1
    
    # l3[2][0] = l3[2][0].capitalize()
    # l3[2].append(666)
    # l3[2][0].capitalize()
    # print(l3)
    
    # 5,将 99 通过数字加1 的方式变成100,并放回原处。
    # l3[2][1] = l3[2][1] + 1
    # l3[2][1] += 1
    # print(l3)
    

    元组:只读列表,只允许查询,不允许增删改

     #tu1 = ('alex', 100, True, [1, 2, 3], {'name':'太白'},(22, 33))
    # 索引,切片,切片+步长
    # print(tu1[0])
    # print(tu1[:3])
    # # for 循环
    # for i in tu1:
    #     print(i)
    # index,len,count
    # 应用场景: 一些非常重要的数据,不允许所有人修改的,放在元组中。
    # tu1[3].append(666)
    # tu1.append(666) 错的
    # 元组 儿子不能改,孙子可能可以改。
    # print(tu1)
    

    range() 自定制的 数字范围的 可迭代对象类比成列表

    # range(1,101)
    # print(range(1,101))
    # range() 一般和for 循环结合使用。
    # for i in range(1,11):
    #     print(i)
    
  • 相关阅读:
    Docker的load,save和import,export的区别
    LeetCode 146. LRU 缓存机制
    mongoTemplate怎么获取MongoDB自动生成的主键_id
    $ajax()或$.get()中的请求成功时运行的函数success无法执行的解决办法
    使用$.get()请求controller出现 http://localhost:8080/../[object%20Object] 错误的问题解决
    Java利用Runtime调用Python脚本
    SpringMVC返回对象类型报错HttpMessageNotWritableException: No converter found for return value of type
    「题解」洛谷 P1801 黑匣子
    「题解」洛谷 P1717 钓鱼
    「题解」洛谷 P2571 [SCOI2010]传送带
  • 原文地址:https://www.cnblogs.com/hyg19910701/p/9508056.html
Copyright © 2011-2022 走看看