zoukankan      html  css  js  c++  java
  • 列表,元祖,range

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

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

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

    # li = [123, '老男孩', True, [1, 2, 3], {'name': 'alex'}, (1, 2, 3)]
    # 列表称之为容器型数据类型。
    # l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
    # 按照索引取值
    # print(l1[0])
    # print(l1[1], type(l1[1]))
    # 按照切片取值,可取步长 顾头不顾尾
    # print(l1[:3])
    # print(l1[2:])
    # print(l1[::2])
    增删改查:
    增:
    li = [1,'a','b',2,3,'a']
    # li.insert(0,55) (索引,元素) #按照索引去增加,插入
    # print(li) [55, 1, 'a', 'b', 2, 3, 'a']
    # li.append('aaa')    #增加到最后,追加       [1,'a','b',2,3,'a','aaa']
    # li.append([1,2,3])   #增加到最后,追加      [1,'a','b',2,3,'a','aaa',[1,2,3]]
    # print(li)       
    # li.extend(['q,a,w']) #迭代的去追加 [1, 'a', 'b', 2, 3, 'a', 'q', ',', 'a', ',', 'w'] # li.extend(['q,a,w','aaa']) [1, 'a', 'b', 2, 3, 'a', 'q,a,w', 'aaa'] # li.extend('a') # li.extend('abc') # li.extend('a,b,c') # print(li) 列表是可迭代对象
    字符串转化为列表:
    li = []
    li.extend('abc')
    print(li) ['a', 'b', 'c']
    删:

    li = [1,'a','b',2,3,'c']
    # l1 = li.pop(1)      #按照位置去删除,有返回值
    # print(l1)            'a'
    # l1 = li.pop() #默认删除最后一位,有返回值
    # print(l1) 'c' # li.remove('a') #按照元素去删除,如果有相同元素,只删除第一个 # print(li) [1,'b',2,3,'c'] # li.clear() #清空列表
    # print(li) [] 空列表
    del:
    1,在内存级别删除列表
    del l1
    print(l1) name 'l1' is not defined
    2,按照索引删除
    del l1[2]
    print(l1) [1, 'a', 2, 3, 'c']
    3,切片删除,可加步长
    del l1[:-1]
    print(l1) ['c']

    改:
    # li = ["windows", "Ubuntu", "CenOS", "Red Hat"]       
    # li[1] = "MacOS" #按照索引修改
    # print(li) ['windows', 'MacOS', 'CenOS', 'Red Hat']
    # li[0:2] = "MacOS"               #按照切片修改       删除旧的,添加新的(迭代添加)
    #
    print(li) ['M', 'a', 'c', 'O', 'S', 'CenOS', 'Red Hat']

    # li[::1] = ["周杰伦","周润发","麻花藤"]           #切片,可加步长         步长为1,等于列表重新赋值
    # print(li) ['周杰伦', '周润发', '麻花藤']
    # li[::2] = ["周杰伦","周润发","麻花藤"]           如果步长不是1,元素个数必须要匹配,不然会报错
    # print(li) attempt to assign sequence of size 3 to extended slice of size 2
    # li[::2] = ["周杰伦","周润发"]          
    # print(li) ['周杰伦', 'Ubuntu', '周润发', 'Red Hat']
    查:
    # 索引、切片、for循环
    常用操作:
    #len     列表长度或列表里面有多少个元素
    # print(len(l1))

    #count 某元素在列表里出现的次数
    # print(l1.count('taibai'))

    #index 通过元素找索引
    # print(l1.index('alex'))

    # l2 = [1, 3, 5, 9, 7, 6, 2, 4]
    #sort 从小到大,正序排序
    # l2.sort()
    # print(l2) [1, 2, 3, 4, 5, 6, 7, 9]
    li = ["1", "5","112","11","111","21"]     # 字符串排序,按照位数排
    # li.sort()
    # print(li) ['1', '11', '111', '112', '21', '5']

    #sort 从大到小,倒序排序
    # l2.sort(reverse=True)
    # print(l2) [9, 7, 6, 5, 4, 3, 2, 1]

    #翻转 reverse
    # l2.reverse()
    # print(l2) [4, 2, 6, 7, 9, 5, 3, 1]

    
    
    元组 
    # 只读列表,不能增删改 只能查询
    # tu = (11, 22, 33, 44, 55)
    # 基本操作: 索引,切片,步长,for循环,index,len, count
    # print(tu[0])
    # print(tu[:3:2])
    # for i in tu:
    # print(i)
    # index len count
    # 可以del
    del tu 内存级别删除
    print(tu) name 'tu' is not defined
    # tu = ("哈哈", )        # 如果只有一个元素. 必须加一个逗号
    # print(tu,type(tu)) ('哈哈',) <class 'tuple'>
    # tu = ("哈哈" )        
    # print(tu,type(tu)) ('哈哈') <class 'str'>

    range:
    range(start,end,step) 顾头不顾尾,可切片,可加步长
    for i in range(100)        0到99
    for i in range(0,100)        0到99
    for i in range(0,100,2)        0到98的偶数

    列表的枚举:

    enumerate:枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。

    复制代码
    li = ['alex','银角','女神','egon','太白']
    for i in enumerate(li):
        print(i)

    执行结果: 元祖类型

    (0, 'alex')
    (1, '银角')
    (2, '女神')
    (3, 'egon')
    (4, '太白')

    for index,name in enumerate(li,1):
        print(index,name)

    执行结果: 解构 可以设定索引的起始位置

    1 alex
    2 银角
    3 女神
    4 egon
    5 太白

    for index, name in enumerate(li):  # 起始位置默认是0,可更改
        print(index, name)   

    执行结果: 解构

    0 alex
    1 银角
    2 女神
    3 egon
    4 太白



  • 相关阅读:
    charindex使用一个异常记录思考
    真的有命运吗?
    《职道》序言:走向成功从职场细节开始
    迷人的笑容
    导致sql ce数据上传(采用push方法)不成功常见问题
    转篇文章,扫扫盲 《主流数据仓库产品对比分析》
    (转贴)JIRA安装和破解,随便看看吧
    Eclipse快捷键大全(转贴)
    没事在中移动MM商场做了2个应用,分别是运动专家和趣味闹钟
    免费实用微软系统工具集推荐(转)
  • 原文地址:https://www.cnblogs.com/molieren/p/9132806.html
Copyright © 2011-2022 走看看