zoukankan      html  css  js  c++  java
  • 基础数据类型(二)

    1、列表List

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

    list = ['hi', True, (4,5,6), ['A', 'B', 'C'], {'name':'Alex'}]

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

    1.1、列表元素的添加

    #1、append(obj)在列表末尾添加新的元素
    list = ['A','B','C',2,True]
    print(list)         #['A', 'B', 'C', 2, True]
    list.append("D")
    print(list)         #['A', 'B', 'C', 2, True, 'D']
    list.append([1,2,3])
    print(list)         #['A', 'B', 'C', 2, True, 'D', [1, 2, 3]]
    
    #2、insert(index, obj)插入元素,index为要插入的索引位置
    list = ['A','B','C',2]
    list.insert(3,'egon')
    print(list)             #['A', 'B', 'C', 'egon', 2]
    
    #3、extend(seq)在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)即迭代追加
    list = ['A']
    list.extend('机器人')
    print(list)             #['A', '机', '器', '人']
    list.extend([True,2])   
    print(list)             #['A', '机', '器', '人', True, 2]
    list.extend(('1','2'))  
    print(list)             #['A', '机', '器', '人', True, 2, '1', '2']
    

    1.2、列表元素的删除

    #1、pop(index) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
    list = ['A','B','C','D','E']
    list.pop()      #默认删除最后一个
    print(list)     #['A', 'B', 'C', 'D']
    retval = list.pop(2)    #移除元素返回值
    print(retval)           #C
    print(list)             #['A', 'B', 'D']
    
    #2、remove(obj) 移除列表中某个值的第一个匹配项,无返回值
    list = ['A','B','C','D','E']
    retval = list.remove('C')
    print(retval)       #None
    print(list)         #['A', 'B', 'D', 'E']
    
    #3、del 删除列表元素
    #(1)功能一:删除列表
    list = ['A','B','C','D']
    del list
    print(list)     #<class 'list'>
    
    #(2)功能二:可以按照索引或切片去删除元素()
    list = ['A','B','C','D','E','F']
    del list[4]
    print(list)         #['A', 'B', 'C', 'D', 'F']
    del list[0:2]       #切片0:2,删除索引为0、1,不包括2
    print(list)         #['C', 'D', 'F']
    
    list1 = [1,2,3,4,5,6]
    #del list[起始位置:步长]
    del list1[1::2]      #删除所有索引为奇数的元素    
    print(list1)         #[1, 3, 5]
    
    #4、clear() 清空列表,无返回值
    list = ['A','B','C','D','E','F']
    list.clear()
    print(list)         #[]
    

    1.3、列表元素的修改

    list = ['alex','taibai','wusir','ritian']
    #(1)、按照索引去改
    list[0] = '男神'
    print(list)     #['男神', 'taibai', 'wusir', 'ritian']
    #(2)、按照切片去改
    list[0:2] = ['太白','Alex']
    print(list)     #['太白', 'Alex', 'wusir', 'ritian']
    

    1.4、查询

    #1、按索引或切片查找
    list = ['A','B','C','D','E','F']
    print(list[0])      #A
    print(list[0:3])    #['A', 'B', 'C']
    
    #2、for循环查找
    list = ['A','B','C','D','E','F']
    for item in list:
        print(item, end=' ')     #A B C D E F
    
    #3、index(obj) 从列表中找出某个值第一个匹配项的索引位置
    list = ['A','B','C','D',]
    print(list.index('C'))      #2
    
    #4、sort() 对列表中元素进行排序
    list = [1,3,6,8,7,4,2,9,10]
    #(1)从小到大
    list.sort()
    print(list)         #[1, 2, 3, 4, 6, 7, 8, 9, 10]   
    #(2)sort(reverse)  从大到小
    list.sort(reverse=True)
    print(list)         #[10, 9, 8, 7, 6, 4, 3, 2, 1]
    
    #5、reverse() 反向列表中元素,即倒序
    list = [1,3,6,8,7,4,2,9,10]
    list.reverse()
    print(list)     #[10, 9, 2, 4, 7, 8, 6, 3, 1]
    
    #6、count(obj) 统计某个元素在列表中出现的次数
    list = [1,3,5,7,3,8,4,2,9]
    print(list.count(3))      #2  
    

    1.5、列表常用函数

    #1、len(list)  列表元素个数
    list = [1,3,4,5,6,9,2,10]
    print(len(list))        #8
     
    #2、max(list)  返回列表元素最大值
    list = [1,3,4,5,6,9,2]
    print(max(list))        #10
     
    #3、min(list)  返回列表元素最小值
    list = [1,3,4,5,6,9,2]
    print(min(list))        #1
    
    #4、list(seq)  将元组转换为列表
    aTup = (1,2,3,4)
    print(aTup)          #(1, 2, 3, 4)
    alist = list(aTup)
    print(alist)         #[1, 2, 3, 4]
    

    1.6、列表与字符串的转换

    alist = ['alex','wusir','taibai']
    #1、列表转字符串
    aStr = '_'.join(alist)
    print(aStr)         #alex_wusir_taibai
    #2、字符串转列表
    blist = aStr.split('_')
    print(blist)        #['alex', 'wusir', 'taibai'] 

    2、元组Tuple 

    元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。

    元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

    实例如下:

    tup1 = ('hello', 'python', 2018, 01)
    tup2 = (1, 2, 3, 4, 5 );
    tup3 = ("a", "b", "c", "d")
    
    #创建空元组
    tup = ()
    

    当元组()中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用:

    #即该元素是什么类型,变量就是什么类型
    tuple1 = (1)
    print(tuple1, type(tuple1))     #1 <class 'int'>
    #加上逗号',',才是元组
    tuple1 = (1,)
    print(tuple1, type(tuple1))     #(1,) <class 'tuple'>

    注:元组中的方法与列表的使用方式相同,在此不再赘述。

    元组的子元素不能更改,但孙子元素有可能更改

    实例如下:

    #元组中孙子元素的修改
    aTup = (1,2,'wusir',[1,2,3],(2,3,4),'taibai',True)
    aTup[3].pop(1)
    print(aTup)         #(1, 2, 'wusir', [1, 3], (2, 3, 4), 'taibai', True)
    aTup[3].append('taibai')
    print(aTup)         #(1, 2, 'wusir', [1, 3, 'taibai'], (2, 3, 4), 'taibai', True)
  • 相关阅读:
    Linux基础之什么是Linux
    JavaWeb之AJAX
    JavaWeb之XML
    JavaWeb之Servlet组件
    JavaWeb之JSP
    JavaWeb之HTTP概述
    JavaWeb之开发环境搭建
    JavaWeb之JQuery
    JavaWeb之javaScript
    ddd领域驱动
  • 原文地址:https://www.cnblogs.com/lioushell/p/8341649.html
Copyright © 2011-2022 走看看