[Python]学习基础篇:列表(List)的浅解

简介:

列表

首先先说明中python中数组下标的使用,在java,c或者c++中,每个数组的下标必须是正数,不能出现负数,如在java,c或者c++中使用a[-1],编辑器会报错,而在python中数组的访问时可以出现负数下标,表示倒数第几个元素。

  • list列表的定义 
    Python中列表的定义比较简单,不需要想java中需要用List类创建的一个对象。在java中不同类型的对象是不能存放在同一个列表中,而Python中同一个list可以存放不同类型的数据,同时也可以存放一个obj。 
    格式:list=[……..]

>>>list=['defrew','234','234','dew','2342',238492,'f'] >>>list['defrew', '234', '234', 'dew', '2342', 238492, 'f']123

列表的重复定义: 
list=list * count

>>>list=['haha'] >>>list * 4['haha', 'haha', 'haha', 'haha']123

list=[1,3,44’234’]

  • 列表中元素的增加

函数/表达式 说明 举例
+ 向列表的末尾条件一个新的列表 >>>list=list+['a'] >>>list [1,3,44,'234','a']
addpend( x ) 向列表的末尾添加一个元素 >>>list.append(10) >>>list [1,3,44,'234','a',10]
extend( list ) 向列表的末尾添加一个list >>>list.extend([5,6]) >>>list [1,3, 44,'234','a',10,5,6]
insert( i , x ) 在i的位置添加元素x >>>list.insert(0,'x') >>>list ['x',1,3,44,'234','a',10,5,6]

list=[1,2,3,4,5,6] 
列表的删除

函数 说明 举例
del 删除特定位置的元素 >>>del list[3] >>>list [1,2,3,5,6]
remove(x) 删除特定值得元素 >>>list.remove(3) >>>list [1,2,5,6]
pop([]) 弹出指定位置的元素,若参数i不存在时,弹出最后一个元素 >>>list.pop() 6 >>>list [1, 2, 5]

  • 列表的更新 
    对于列表的更新,只需要将特定未知的元素进行从新复制,这样就可以实现更新

>>>list[i]=x1

list=[1,2,3,4,5,6] 
检查列表中元素是否存在

函数 说明 举例
count(str) 判断str元素出现的次数 >>>list.count(1) 1
value in list 使用in表达式检测元素是否存在,若存在返回True >>>4 in list True >>>7 in list False
index(str) 返回某个元素的准确位置,若元素不在列表中则出错 >>>list.index(3) 2 list.index(7) 7 is not in list

list=[1,2,3,4,5,6] 
列表的迭代

>>> for key in d:     print(key)12

如何将列表的索引和值都打印出来呢?使用Python内置的enumerate函数可以把一个list变成索引-元素对,这样就可以在for循环中同时迭代索引和元素本身:

>>>for key in enumerate(list)         print key     0  1     1  2     ....

list=[1,2,3,4,5,6] 
列表的常用函数

函数 说明 举例
cmp(list1,list2) 比较两个列表的元素,先比较第一个元素,若第一个元素相同,则开始对比第二个元素,若不同不在比较。若两个列表相同,则返回0,若list1>list2,返回1,若list1
len(list) 返回列表的长度或者元素个数 >>>len(list) 6
max(list)/min(list) 返回列表中的最大值和最小值
sorted(list[,reverse=True]) 默认为升序排序,若第二个参数存在且值为True,则为降序排序
reversed(list) 逆序排序

  • 列表的切片 
    对于列表而言找打某一个元素比较简单,使用list[i]就可以找到这个元素了,那对于找到某一范围内的元素,python的列表提供了切片的方法,可以找到某一个范围内的元素。 
    格式:list[start: end] 
    list=[1,2,3,4,5,6]

(1).取前3个元素,若从0开始取,则第一个参数可以省略 >>>list[0:3] [1, 2, 3] >>>list[:3] [1, 2, 3] (2).取1到4个元素 >>>list[1:4] [2, 3, 4] (3).取倒数第一个到倒数第三个 >>>list[-3:-1] [4, 5] (4).取最后两个 >>>list[-2:] [5, 6] (5).若想在列表中取前4个,每两个中去一个 >>>list[:4:2] [1, 3] (6).复制一个列表 >>>list1=list[:] >>>list1 [1, 2, 3, 4, 5, 6]

元组

元组由简单的对象组构成,元组与列表相似,但是元组不能在原处修改。元组位置有序的对象集合,元组通过偏移来访问。

为什么有了列表还要元组?元组的不变性提供了某种完整性,可以确保元组在程序中不被另一个引用修改,元组类似于其他语言中的常数。

  • 元组的定义 
    对于tuple的定义和list定义是一样的,不过tuple定义之后就不能修改值了。

>>>a=(1,2,3,4,5)

对于定义tuple只有一个元素的元组,对于以下定义会产生歧义

>>>a=(1) 1

以上定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。 
那么对于只有有个元素的元组的定义时必须加上逗号,例如:

>>>a=(1,) (1,)

元祖的定义之后它的值就不会改变,但是对于元组中元素是没有限制的,元素可以是tuple,list,dict等,那么定义一个可变的元组,那么元组中的元素中有一个可变的列表,例如:

>>>a=(1,2,[2,3,4,5]) >>>a(1, 2, [2, 3, 4, 5])

  • 元组的检索 
    对于元组的检索使用和list检索相同的方法就行

  • 元组和list的差别

**相同点**(1).使用同样的方式遍历 (2).以同样的方法进行切片和检索**不同点**(1).元组中的元素一旦定义就无法改变,所以就无法使用append()和extend()方法来增加元素。 (2).元组中的元素是无法修改的,所以也是不发使用remove()和pop()方法。**tuple相对于list的优点**(1).元组的速度比列表快 (2).元组对于不需要改变的数据进行‘写保护’,安全 (3).有时一些元组可以做字典键
Insane_linux
相关文章
|
4月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
322 2
|
5月前
|
缓存 监控 数据可视化
微店item_search - 根据关键词取商品列表深度分析及 Python 实现
微店item_search接口可根据关键词搜索商品,返回商品信息、价格、销量等数据,适用于电商检索、竞品分析及市场调研。接口需通过appkey与access_token认证,支持分页与排序功能,Python示例代码实现调用流程,助力商品数据高效获取与分析。
|
4月前
|
开发者 Python
Python列表推导式:优雅与效率的完美结合
Python列表推导式:优雅与效率的完美结合
476 116
|
4月前
|
大数据 开发者 Python
Python列表推导式:简洁与高效的艺术
Python列表推导式:简洁与高效的艺术
417 109
|
4月前
|
Python
Python列表推导式:简洁与高效的艺术
Python列表推导式:简洁与高效的艺术
489 119
|
4月前
|
开发者 Python
Python列表推导式:优雅与效率的完美融合
Python列表推导式:优雅与效率的完美融合
353 104
|
4月前
|
Python
Python列表推导式:优雅与效率的艺术
Python列表推导式:优雅与效率的艺术
342 99
|
4月前
|
数据处理 Python
解锁Python列表推导式:优雅与效率的完美融合
解锁Python列表推导式:优雅与效率的完美融合
320 99
|
4月前
|
开发者 Python
Python列表推导式:一行代码的艺术与力量
Python列表推导式:一行代码的艺术与力量
483 95
|
5月前
|
开发者 Python
Python神技:用列表推导式让你的代码更优雅
Python神技:用列表推导式让你的代码更优雅
550 99

推荐镜像

更多