zoukankan      html  css  js  c++  java
  • Python基础03 序列

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!

     

    sequence 序列

    sequence(序列)是一组有顺序元素集合

    (严格的说,是对象的集合,但鉴于我们还没有引入“对象”概念,暂时说元素)

     

    序列可以包含一个或多个元素,也可以没有任何元素。

    我们之前所说的基本数据类型,都可以作为序列的元素。元素还可以是另一个序列,以及我们以后要介绍的其他对象。

     

    序列有两种:tuple(定值表; 也有翻译为元组) 和 list ()

    >>>s1 = (2, 1.3, 'love', 5.6, 9, 12, False)         # s1是一个tuple

    >>>s2 = [True, 5, 'smile']                          # s2是一个list

    >>>print(s1,type(s1))

    >>>print(s2,type(s2))

    tuple和list的主要区别在于,一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更

    一个序列作为另一个序列的元素

    >>>s3 = [1,[3,4,5]]

    空序列

    >>>s4 = []

     

    元素的引用

    序列元素的下标从0开始:

    >>>print(s1[0])

    >>>print(s2[2])

    >>>print(s3[1][2])

    由于list的元素可变更,你可以对list的某个元素赋值:

    >>>s2[1] = 3.0

    >>>print(s2)

    如果你对tuple做这样的操作,会得到错误提示。

    所以,可以看到,序列的引用通过s[<int>]实现, int为下标

     

    其他引用方式

    范围引用: 基本样式[下限:上限:步长]

    >>>print(s1[:5])             # 从开始到下标4 (下标5的元素 不包括在内)

    >>>print(s1[2:])             # 从下标2到最后

    >>>print(s1[0:5:2])          # 从下标0到下标4 (下标5不包括在内),每隔2取一个元素 (下标为0,2,4的元素)

    >>>print(s1[2:0:-1])         # 从下标2到下标1

    从上面可以看到,在范围引用的时候,如果写明上限,那么这个上限本身不包括在内

    尾部元素引用

    >>>print(s1[-1])             # 序列最后一个元素

    >>>print(s1[-3])             # 序列倒数第三个元素

    同样,如果s1[0:-1], 那么最后一个元素不会被引用 (再一次,不包括上限元素本身

     

    字符串是元组

    字符串是一种特殊的元组,因此可以执行元组的相关操作。

    >>>str = 'abcdef'

    >>>print(str[2:4])

     

    总结

    tuple元素不可变,list元素可变

    序列的引用 s[2], s[1:8:2]

    字符串是一种tuple


  • 相关阅读:
    html+css 笔记
    JS随手笔记
    JQ几个淡入淡效果
    AngularJS编译阶段应分为两个阶段
    JavaScript 原型链的理解
    js继承的6种方式
    什么是跨域?跨域解决方法
    computed (计算属性) 和 methods (方法) 的区别
    谈谈vue生命周期
    基本类型有哪几种?null 是对象吗?基本数据类型和复杂数据类型存储有什么区别?
  • 原文地址:https://www.cnblogs.com/sunylat/p/6217524.html
Copyright © 2011-2022 走看看