zoukankan      html  css  js  c++  java
  • python 基础 1.5 python数据类型(三)--元组

    一.python的数据类型 序列--元组
    1.序列
    1》字符串,列表,元组都是序列。
    2》序列的两个特点是索引操作符和切片操作符
    索引操作符:我们可以从序列中抓取一个特定项目
    切片操作符:让我们可以获取序列的一个切片,即一部分序列
     
    2.序列的基本操作:
    1》len() //求序列的长度
    2》+ //连接2个序列
    3》* //重复序列元素
    4》in //判断元素是否在序列中
    5》max() //返回最大值
    6》min() //返回最小值
    7》cmp(x,y) //比较两个序列是否相等。cmp比较的不是字母多少个,比较的是字母的大小(a-z由小到大)
     
    len用法:求序列的长度
    In [2]: a = 'abcdef'
    In [3]: a
    Out[3]: 'abcdef'
     
    In [4]: len(a)
    Out[4]: 6
     
    ‘+’ 号用法:连接两个序列
    In [5]: a + 'g'
    Out[5]: 'abcdefg'
     
     
    ‘*’ 号用法:重复序列元素
    In [6]: a *3 //abcdef 重复3次
    Out[6]: 'abcdefabcdefabcdef'
     
    In [9]: '#' * 5 //#号重复5次
    Out[9]: '#####'
     
    in用法:判断元素是否在序列里
    In [10]: a
    Out[10]: 'abcdef'
     
    In [11]: 'a' in a //判断a的字符是否在a的序列里,返回值为true
    Out[11]: True
     
    In [12]: 'h' in a //判断h是否在a的序列里,返回值为false,说明不在a的序列里
    Out[12]: False
     
    not in 用法://判断元素不在序列里
    In [13]: 'h' not in a //判断h是否在a的序列里,返回值为true,说明h不在a的序列里
    Out[13]: True
     
    max() 与 min() 求一个序列里的最大值与最小值
    In [14]: a
    Out[14]: 'abcdef'
     
    In [15]: max(a) //a序列里的最大值为f
    Out[15]: 'f'
     
    In [16]: min(a) //a序列里的最小值为a
    Out[16]: 'a'
     
    cmp(x,y):比较两序列是否相等
    In [17]: help(cmp)
    Help on built-in function cmp in module __builtin__:
     
    cmp(...)
    cmp(x, y) -> integer
     
    Return negative if x<y, zero if x==y, positive if x>y.
    注:如果返回值为负数(negative)则x小于y。如果返回值为0,则x等于y。如果返回值为正数,则x大于y。
    In [24]: a //a的序列为“abcdef”
    Out[24]: 'abcdef'
     
    In [23]: cmp(a,'abcde') //比较a的序列与字符串abcde。返回值为正数,说明a序列大于字符串abcde
    Out[23]: 1
     
    In [25]: cmp(a,'abcdef') //返回值为0,说明a序列等于字符串“abcdef”
    Out[25]: 0
     
    In [26]: cmp(a,'abcdefg') //返回值为负1,说明a序列小于字符串“abcdefg”
    Out[26]: -1
     
    In [27]: cmp(a+'g','abcdefg') //返回值为0,说明相等
    Out[27]: 0
     
     
    2.元组(),定义元组用圆括号表示
    1》元组和列表十分相似
    2》元组和字符串一样是不可变的
    元组可以存储一系列的值
    元组通常用在用户定义的函数能够安全的采用一组值的时候,即被使用的元组的值不会改变。
    3》定义一个元组
    In [30]: t = ('a',1,(1,)) //元组里可以存放:字符,数字,还可以存放另一个元组(1,)
    In [31]: t
    Out[31]: ('a', 1, (1,))
     
    In [32]: t1 = (1,) //定义一个新的元组为t1,圆括号里边的1,只有加逗号才表示元组
    In [34]: type (t1) //t1的类型
    Out[34]: tuple 元组
     
    In [35]: t //查看t元组
    Out[35]: ('a', 1, (1,))
     
    In [36]: t[0] //查看t元组中第一个字符为a
    Out[36]: 'a'
     
    In [37]: t[0] = 6 //想把第一个字符变成6,报错,说明元组里的东西是不可变的
    ---------------------------------------------------------------------------
    TypeError Traceback (most recent call last)
    <ipython-input-37-b3ff79bf2df1> in <module>()
    ----> 1 t[0] = 6
     
    TypeError: 'tuple' object does not support item assignment //元组里的项目不支持改变
     
    3. 元组的操作。
     
    1》 元组和字符串一样属于序列类型,可以通过索引和切片操作
    元组值不可变
     
    元组的操作:
    In [20]: a
    Out[20]: 'abc'
     
    In [21]: t = (a,'b','c')
     
    In [22]: t
    Out[22]: ('abc', 'b', 'c')
     
     
    2》元组的拆分
    - t = (1,2,3)
    a,b,c = t
     
    通过变量接收元组的值:
    In [23]: first,second,third = t
     
    In [24]: first
    Out[24]: 'abc'
     
    In [25]: second
    Out[25]: 'b'
     
    In [26]: third
    Out[26]: 'c'
     
    查看元组里边的方法
    In [27]: t.
    t.count t.index //有两个方法。python是一个面向对象的语言,count,index等都是t的方法。
     
    In [28]: help(t.count)
    Help on built-in function count:
     
    count(...)
    T.count(value) -> integer -- return number of occurrences of value
    查看value 值在元组中出现的次数
     
    In [32]: a
    Out[32]: 'abc'
     
    In [33]: t = (a,'b','c') //t的元组
     
    In [34]: t
    Out[34]: ('abc', 'b', 'c')
     
    In [30]: t.count('b')
    Out[30]: 1 // b元素在元组里出现里1次。abc 是一个整体
     
    In [31]: t.count('f')
    Out[31]: 0 // f元素没在元组里出现过
     
    In [35]: t.count(a)
    Out[35]: 1 //value值为一个变量时,返回值也是整数
     
    In [36]: help(t.index)
    Help on built-in function index:
     
    index(...)
    T.index(value, [start, [stop]]) -> integer -- return first index of value.
    Raises ValueError if the value is not present.
    查找 t.index元组里边value元素的第一个索引值。例子如下:
    In [38]: t
    Out[38]: ('abc', 'b', 'c')
     
    In [39]: t.index('b')
    Out[39]: 1
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    iSCSI又称为IPSAN
    文档类型定义DTD
    HDU 2971 Tower
    HDU 1588 Gauss Fibonacci
    URAL 1005 Stone Pile
    URAL 1003 Parity
    URAL 1002 Phone Numbers
    URAL 1007 Code Words
    HDU 3306 Another kind of Fibonacci
    FZU 1683 纪念SlingShot
  • 原文地址:https://www.cnblogs.com/lzcys8868/p/7714465.html
Copyright © 2011-2022 走看看