python笔记之列表与元组函数和方法使用举例

时间:2023-03-10 01:41:48
python笔记之列表与元组函数和方法使用举例

在学习列表之前先了解了raw_input和input的区别:(仅适用于版本2,版本3中raw_input和input合并,没有raw_input)

input的语法为:input("str").

raw_input函数把所有的输入当做原始数据保存为字符串格式;

而input默认用户输入为python的合法格式,用于字符串连接时有一定的局限性。

1.序列索引

python中序列索引有两种表达形式:

(1)第一个元素索引是0,第二个是1,以此类推;

(2)最后一个元素索引是-1,倒数第二个是-2,以此类推;

这样,假设序列a个数为n,那么对于第i个元素:a[i]=a[-n+i]

2.序列分片

分片是索引的扩展,索引访问的是单个元素,分片访问的是一定范围内的元素。分片需要提供两个索引作为边界,第一个索引的元素包含在分片内,而第二个不包含在分片内。

举例:

>>> number=[0,1,2,3,4,5,6,7,8,9]
    >>> number[2:5]
    [2, 3, 4]

步长的表示:

>>> number[2:9:2]
    [2, 4, 6, 8]
    >>> number[2:8:2]
    [2, 4, 6]

函数:len:元素的数量;min和max分别返回序列中的最小和最大元素。

3.基本的列表操作

首先引入list函数:将字符串拆分为数组格式

>>> list("list")

['l', 'i', 's', 't']

(1)元素赋值:

>>> number=[0,1,2,3,4,5,6,7,8,9]

>>> number[0]=10
    >>> number
    [10, 1, 2, 3, 4, 5, 6, 7, 8, 9]

(2)删除元素

>>> number=[0,1,2,3,4,5,6,7,8,9]

>>> del number[0]
    >>> number
    [1, 2, 3, 4, 5, 6, 7, 8, 9]

(3)分片赋值

>>> number[1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> number[0:]=[1,2,3]
    >>> number
    [1, 2, 3]

a:列表          n:索引

4.列表的操作方法

(1)append:在列表末尾添加新的元素   a.append('')

>>> number=[1, 2, 3]

>>> number.append(5)
    >>> number
    [1, 2, 3, 5]

(2)count:统计某个元素出现的个数 a.count()

>>> number=[1, 2, 3]

>>> number.count(1)
    1

(3)extend:在序列后添加序列   a.attend(b)

>>> a=[1,2,3]
    >>> b=[4,5,6]
    >>> a.extend(b)
    >>> a
    [1, 2, 3, 4, 5, 6]

(4)index:用于从列表中找出某个值第一个匹配项的索引位置  a.index(n)

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.index(4)
4

(5)insert:将新对象插入到列表中,a.insert(index,'')在第index的位置插入“”

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.insert(10,10)
>>> number
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

(6)pop:移除列表中的一个元素,默认最后一个 a.pop(n)

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.pop()
9
>>> number
[0, 1, 2, 3, 4, 5, 6, 7, 8]
>>> number.pop(0)
0
>>> number
[1, 2, 3, 4, 5, 6, 7, 8]

(7)remove:移除某个值的第一个匹配项  a.remove('')

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.remove(7)
>>> number
[0, 1, 2, 3, 4, 5, 6, 8, 9]

(8)reverse:将列表中的元素反向存放 a.reverse()

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.reverse()
>>> number
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

(9)sort、sorted:将列表中的元素排列

对自身排列: a.sort()

>>> number=[4,3,2,6,7,3]
>>> number.sort()
>>> number
[2, 3, 3, 4, 6, 7]

排列后赋值给其他变量:  b=sorted(a)

>>> number1=sorted(number)
>>> number1
[2, 3, 3, 4, 6, 7]

(10)cmp:比较函数,cmp(a,b)   若a>b,返回1,若a<b,返回-1,若a=b,返回0

元组和列表一样,也是一种序列,不同的是元组不能修改。

元组的创建:用逗号分隔开一些元素就自动创建了元组,或用圆括号创建。

tuple:以一个序列为输入,把它转换为元组

>>> a=[1,2,3]
>>> tuple(a)
(1, 2, 3)