zoukankan      html  css  js  c++  java
  • 第4 章序列的应用

    必背必记

    1、切片
    切片操作是访问序列中元素的另一种方法,它可以访问一定范围内的元素。通过切片操
    作可以生成一个新的序列。实现切片操作的语法格式如下:

    sname[start : end : step]

    参数说明:
      sname:表示序列的名称。
      start:表示切片的开始位置(包括该位置),如果不指定,则默认为0。
      end:表示切片的截止位置(不包括该位置),如果不指定,则默认为序列的长度。
      step:表示切片的步长,如果省略,则默认为1,当省略该步长时,最后一个冒号也可
    以省略。

    例:

    >>> m = list(range(100))  #通过range函数创建一个0-99的数列,组成一个list赋值给m
    >>> m
    [0, 1, 2, 3, 4, 5, 6, ……,99]
    
    >>> m[:10]  #取前十个数
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    

    >>> m[-10:]  #取后十个数 [90, 91, 92, 93, 94, 95, 96, 97, 98, 99]

    >>> m[10:20]  #取前11-20个数 [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

    >>> m[:10:2]  #前十个数中,每2个数取一个 [0, 2, 4, 6, 8]

    >>> m[5:15:3]  #第6-15个数中,每3个数取一个 [5, 8, 11, 14]

    >>> m[::10]  #所有的数中,每10个数取一个 [0, 10, 20, 30, 40, 50, 60, 70, 80, 90]

    >>> m[:]  #什么都不写,可以原样复制一个list [0, 1, 2, 3, 4, 5, 6, 7,……,99]

    2、检查某个元素是否是序列的成员
    在Python中,可以使用in关键字检查某个元素是否为序列的成员,即检查某个元素是否
    包含在某个序列中。语法格式如下:

    value in sequence

    其中,value 表示要检查的元素,sequence 表示指定的序列。

    例:

    >>>3 in m
    True
    100 in m
    False

    3、序列相关内置函数

    函数 作用
    list()

    将序列转换为列表

    str() 将序列转换为字符串
    sum() 计算元素和
    reversed() 反向序列中的元素
    enumerate() 将序列组合为一个索引序列,多用在for 循环中
    sorted() 对元素进行排序

    4、列表的创建和删除
    (1)同其他类型的Python 变量一样,创建列表时,也可以使用赋值运算符“=”直接
    将一个列表赋值给变量,语法格式如下:

    listname = [element 1,element 2,element 3,…,element n]

    (2)创建空列表
    在Python 中,也可以创建空列表,例如,要创建一个名称为emptylist 的空列表,可以
    使用下面的代码:

    emptylist = []

    (3)创建数值列表
    在Python 中,可以使用list() 函数直接将range()函数循环出来的结果转换为列表。
    list()函数的基本语法如下:

    list(data)

    其中,data 表示可以转换为列表的数据,其类型可以是range 对象、字符串、元组或者
    其他可迭代类型的数据。

    (4)删除列表
    对于已经创建的列表,不再使用时,可以使用del 语句将其删除。语法格式如下:

    Del listname

    其中,listname 为要删除列表的名称。

    5、遍历列表
    (1)直接使用for 循环实现
    直接使用for 循环遍历列表,只能输出元素的值,语法格式如下:

    for item in listname:
    # 输出item

    其中,item 用于保存获取到的元素值,要输出元素内容时,直接输出该变量即可;listname
    为列表名称。
    (2)使用for 循环和enumerate()函数实现
    使用for 循环和enumerate()函数可以实现同时输出索引值和元素内容,语法格式如下:

    for index,item in enumerate(listname):
    # 输出index 和item

    参数说明:
    index:用于保存元素的索引。
    item:用于保存获取到的元素值,要输出元素内容时,直接输出该变量即可。
    listname 为列表名称

    6、添加列表元素语法格式如下:

    listname.append(obj)

    上面介绍的是向列表中添加一个元素,如果想要将一个列表中的全部元素添加到另一个
    列表中,可以使用列表对象的extend()方法实现。extend()方法的语法如下:

    listname.extend(seq)

    其中,listname 为要添加元素的列表名称,obj 为要添加到列表末尾的对象。seq 为要添
    加的列表。语句执行后,seq 的内容将追加到listname 的后面。

    7、对列表进行统计和计算
    (1)获取指定元素出现的次数
    使用列表对象的count()方法可以获取指定元素在列表中的出现次数。基本语法格式如
    下:

    listname.count(obj)

    (2)获取指定元素首次出现的下标
    使用列表对象的index()方法可以获取指定元素在列表中首次出现的位置(即索引)。

    基本语法格式如下:

    listname.index(obj)

    参数说明:
      listname:表示列表的名称。
      obj:表示要判断是否存在的对象,这里只能进行精确匹配,即不能是元素值的一部分。
    (3)统计数值列表的元素和
      在Python 中,提供了sum()函数用于统计数值列表中各元素的和。语法格式如下:

    sum(iterable[,start])

    参数说明:
      iterable:表示要统计的列表。
      start:表示统计结果是从哪个数开始(即将统计结果加上start 所指定的数),是可选参
      数,如果没有指定,默认值为0。

    8、对列表进行排序

      (1)使用列表对象的sort()方法
      列表对象提供了sort()方法用于对原列表中的元素进行排序。排序后原列表中的元素顺
    序将发生改变。列表对象的sort()方法的语法格式如下:

    listname.sort(key=None,reverse=False)

    参数说明:
      listname:表示要进行排序的列表。
      key:表示指定从每个元素中提取一个用于比较的键(例如,设置“key=str.lower”表
    示在排序时不区分字母大小写)。
      reverse:可选参数,如果将其值指定为True,则表示降序排列;如果为False,则表示
    升序排列,默认为升序排列。
    (2)使用内置的sorted()函数实现
      在Python 中,提供了一个内置的sorted()函数,用于对列表进行排序。使用该函数进行
    排序后,原列表的元素顺序不变。storted()函数的语法格式如下:

    sorted(iterable,key=None,reverse=False)

    参数说明:
      iterable:表示要进行排序的列表名称。
      key:表示指定从每个元素中提取一个用于比较的键(例如,设置“key=str.lower”表示
    在排序时不区分字母大小写)。
      reverse:可选参数,如果将其值指定为True,则表示降序排列;如果为False,则表示
    升序排列,默认为升序排列。

    9、列表推导式
    (1)生成指定范围的数值列表,语法格式如下:

    list = [Expression for var in range]

    参数说明:
      list:表示生成的列表名称。
      Expression:表达式,用于计算新列表的元素。
      var:循环变量。

      range:采用range()函数生成的range 对象。
    (2)根据列表生成指定需求的列表,语法格式如下:

    newlist = [Expression for var in list if condition]

    参数说明:
      newlist:表示新生成的列表名称。
      Expression:表达式,用于计算新列表的元素。
      var:变量,值为后面列表的每个元素值。
      list:用于生成新列表的原列表。
      condition:条件表达式,用于指定筛选条件。

    10、元组的创建和删除

    (1)使用赋值运算符直接创建元组
    同其他类型的Python 变量一样,创建元组时,也可以使用赋值运算符“=”直接将一个
    元组赋值给变量。语法格式如下:

    tuplename = (element 1,element 2,element 3,…,element n)

      其中,tuplename 表示元组的名称,可以是任何符合Python 命名规则的标识符;elemnet
      1、elemnet 2、elemnet 3、elemnet n 表示元组中的元素,个数没有限制。
    (2)创建数值元组
      在Python 中,可以使用tuple()函数直接将range()函数循环出来的结果转换为数值元组。
    tuple()函数的基本语法如下:

    tuple(data)

    其中,data 表示可以转换为元组的数据,其类型可以是range 对象、字符串、元组或者
    其他可迭代类型的数据。

    (3)删除元组
    对于已经创建的元组,不再使用时,可以使用del 语句将其删除。语法格式如下:

    del tuplename

    其中,tuplename 为要删除元组的名称。

    11、集合的创建
    (1)直接使用“{}”创建集合

    setname = {element 1,element 2,element 3,…,element n}

    参数说明:
      setname:表示集合的名称,可以是任何符合Python 命名规则的标识符。
      elemnet 1,elemnet 2,elemnet 3,…,elemnet n:表示集合中的元素,个数没有限制
    (2)使用set()函数创建

    在Python 中,可以使用set()函数将列表、元组等其他可迭代对象转换为集合。set()函
    数的语法格式如下:

    setname = set(iteration)

    参数说明:
      setname:表示集合名称。
      iteration:表示要转换为集合的可迭代对象,可以是列表、元组、range 对象等,也可以
    是字符串。如果是字符串,返回的集合将是包含全部不重复字符的集合。

    12、集合的添加和删除
    (1)向集合中添加元素
    向集合中添加元素可以使用add()方法实现,语法格式如下:

    setname.add(element)

    参数说明:
      setname:表示要添加元素的集合。
      element:表示要添加的元素内容,只能使用字符串、数字及布尔类型的True 或者False
    等,
    不能使用列表、元组等可迭代对象。

    (2)从集合中删除元素
      在Python 中,可以使用del 命令删除整个集合,也可以使用集合的pop()方法或者remove()
    方法删除一个元素,或者使用集合对象的clear()方法清空集合,即删除集合中的全部元素,
    使其变为空集合。

    mr.remove('零基础学Python') # 移除指定元素
    print('使用remove()方法移除指定元素后:',mr)
    mr.pop() # 删除一个元素
    print('使用pop()方法移除一个元素后:',mr)
    mr.clear() # 清空集合
    print('使用clear()方法清空集合后:',mr)

    英语词汇

    背记有法,让英语不再成为编程学习的拦路虎!

    sorted
    含义:分类,整理;挑选;[计算机]
    (根据指令的模式)把…分类;把…
    归类;排序的
    热度:

    reversed
    词义:推翻;(使)反转;(使)颠倒;
    (使)翻转;颠倒的
    热度:

  • 相关阅读:
    Canvas 五角星绘制
    Bob Waters
    自定义样式,使用浏览器阅读epub格式的电子书
    FileZilla Server ftp 服务器下通过alias别名设置虚拟目录(多个分区)
    【转载】什么样的妻子什么样的人生
    win10与Ubantu双系统:Linux下开启FTP服务器与创建无线热点(实现文件共享)
    这世上,没有完美的父母,也没有完美的孩子
    考研数学复习建议与资料
    eclipse中修改jsp文件中内容,但是刷新网页内容却不变问题
    JavaScript基础2
  • 原文地址:https://www.cnblogs.com/heshouhui/p/9661349.html
Copyright © 2011-2022 走看看