列表类型

目录

列表的定义

列表的索引

列表的切片

列表类型的操作

 真题解析:



列表的定义

  1. 列表是包含0个或多个元素组成的有序列表,属于序列类型。。
  2. 列表可以对元素进行增加、删除、替换、查找等操作。
  3. 列表没有长度的限制,元素类型可以不同,不需要预定义长度
  4. 列表用“[]”表示,也可以通过list(x)函数将集合或字符串类型转换为列表类型。
>>> a="hello pythhon"

>>> type(a)
<class 'str'>

>>> list(a)
['h', 'e', 'l', 'l', 'o', ' ', 'p', 'y', 't', 'h', 'h', 'o', 'n']

>>> type(a)
<class 'str'>

>>> type(list(a))
<class 'list'>
>>> 

列表的索引

  1. 索引用于获得列表的一个元素,使用中括号[]作为索引的操作符
  2. 举例:
>>> lis=[1010,"1010",[1010,"10"],1010]

>>> type(lis)
<class 'list'>

>>> lis[2]
[1010, '10']

>>> lis[-3]
'1010'

>>> lis[-4]
1010

>>> lis[5]
Traceback (most recent call last):
  File "<pyshell#12>", line 1, in <module>
    lis[5]
IndexError: list index out of range
>>> 
  1.   使用遍历循环对列表元素进行遍历操作,
  2. 基本格式如下:for  <循环变量>  in  <列表变量> :
  3. 举例:
>>> lis=[1010,"1010",[1010,"10"],1010]
>>> for i in lis:
	print(i)
输出结果:	
1010
1010
[1010, '10']
1010

>>> for i in lis:
	print(i*2)
输出结果:
2020
10101010
[1010, '10', 1010, '10']
2020
>>>

列表的切片

  1. 切片用于获得列表的一个片段,即获得一个或多个元素,切片的结果也是列表类型。
  2. 用法:<列表或列表变量>[n:m]<列表或列表变量>[n:m:k]

  3. 此处的m不包含

>>> lis=[1010,"1010",[1010,"10"],1010]

>>> lis[1:3]
['1010', [1010, '10']]

>>> lis[-1:-3]
[]

>>> lis[-3:-1]
['1010', [1010, '10']]
【注】只能从小的数到大的数,即list[n:m]
中n必须小于m,否则返回[].

>>> lis[0:4:2]
[1010, [1010, '10']]

列表类型的操作

  • 列表的操作函数
操作函数描述
len(ls)列表ls的元素个数(长度)
min(ls)列表ls中的最小元素
max(ls)列表ls中的最大元素
list(ls)将x转变成列表类型

 

 

 

 

 

 

>>> ls=[1010,0x1010,10.1]

>>> min(ls)
10.1
【注】只能比较相同数据类型的大小
        >>> a=["a,","v","z"]【注】字符类型的
元素大小是按照字母表的顺序来比较的,
当字母相同时,
依次比较首次出现的不同字母顺序
        >>> min (a)
        'a,'
        >>> max(a)
        'z'

        >>> a=[{"he"},{"hi"},{10,23,"python"}]
【注】对于集合类型的元素,第一个出现
集合元素始终是最大值也是最小值。
        >>> min(a)
        {'he'}
        >>> max(a)
        {'he'}
        >>> a=[{"hi"},{"he"},{10,23,"python"}]
        >>> min(a)
        {'hi'}
        >>> max(a)
        {'hi'}
        >>> 
>>> ls
[1010, 4112, 10.1]

>>> lt=[1010,12.3,"python"]

>>> lz=ls+lt   【注】用+号连接时不用去掉
           相同的元素
>>> lz
[1010, 4112, 10.1, 1010, 12.3, 'python']
>>> lt
[1010, 12.3, 'python']
>>> 

>>> list("python")
['p', 'y', 't', 'h', 'o', 'n']

>>> list({"张三","1010","李四",1010})
['1010', '张三', 1010, '李四']

>>> list({"01":"张三","02":"李四"})   
【注】字典型只保留键
['01', '02']
>>> list({01:"张三",02:"李四"})
SyntaxError: invalid token
>>> 
  • 列表操作方法

        语法:<列表变量>.<方法名称>(<方法参数>)

方法描述
ls.append(x)

在列表ls最后增加一个元素x

ls.insert(i,x)

在列表ls第i位置增加元素x

ls.clear()

删除ls中所有元素

ls.pop(i)

将列表ls中第i项元素取出并删除该元素

ls.remove(x)

将列表中出现的第一个元素x删除

ls.reverse()

列表ls中元素反转 

ls.copy()

s生成一个新列表,复制ls中的所有元素

 

 

 

 

 

 

 

 

>>> ls=[1010,"1010",101,10.1,"python",101]

>>> ls
[1010, '1010', 101, 10.1, 'python', 101]

>>> ls.append("你好")
>>> ls
[1010, '1010', 101, 10.1, 'python', 101, '你好']

>>> ls.insert(3,2048)
>>> ls
[1010, '1010', 101, 2048, 10.1, 'python', 101, '你好']

>>> ls.pop(4)
10.1
>>> ls
[1010, '1010', 101, 2048, 'python', 101, '你好']

>>> ls.remove(101)
>>> ls
[1010, '1010', 2048, 'python', 101, '你好']

>>> ls.reverse()
>>> ls
['你好', 101, 'python', 2048, '1010', 1010]

>>> ls.copy()
['你好', 101, 'python', 2048, '1010', 1010]
>>> 

 真题解析:

例1

>>> vlist=range(5)
>>> print(vlist)
range(0, 5)
>>> type(vlist)
<class 'range'>
>>> vlist=list(range(5))
>>> print(vlist)
[0, 1, 2, 3, 4]
>>> type(vlist)
<class 'list'>

例2:

>>> list2=[i*2 for i in "python"]
>>> print(list2)
['pp', 'yy', 'tt', 'hh', 'oo', 'nn']
>>> 

例3:

>>> list3 = [(m,n) for m in 'AB' for n in 'CD']
>>> print(list3)
[('A', 'C'), ('A', 'D'), ('B', 'C'), ('B', 'D')]
>>> 

 


版权声明:本文为m0_44993371原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。