Python中list的功能介绍
List的功能介绍
1. 列表的两种方法
1. 列表的内置方法
列表的相加
格式:x.__add__(y)等同于x+y
例如:list1 = [1,2,3]
print(list1.__add__([4,5,6]))
>>> [1,2,3,4,5,6]
返回值:list
注:上述的y可以是list/tuple/str/dict/set等,但不可以是int。
是否是包含关系
格式:x.__contains__(y)等同于y in x
例如:list1 = [1,2,3]
print(list1.__contains__([2,3]))
>>> True
返回值:bool
注:上述的y可以是list/tuple/str/dict/set等,但不可以是int。
指定列表索引删除(修改原列表)
格式:x.__delitem__(index)等同于delete x[index]
例如:list1 = [1,2,3]
list1.__delitem__(2)
print(list1)
>>> [1,2]
返回值:None
判断两个列表是否相等
格式:x.__eq__(y)等同于x==y
例如:list1 = [1,2,3]
print(list1.__eq__([2,3]))
>>> False
返回值:bool
判断列表1是否大于等于列表2
格式:x.__ge__(y)等同于x>=y
例如:list1 = [1,2,3]
print(list1.__ge__([1,2]))
>>> True
返回值:bool
注:该方法主要判断依据是列表的第一个元素
访问属性的方法
格式:x.__getattribute__(self,name)
返回值:tuple
取出指定列表索引的元素
格式:x.__getitem__(index)等同于x[index]
例如:list1 = [1,2,3]
print(list1.__getitem(2))
>>> 3
返回值:object
判断列表1是否大于列表2
格式:x.__gt__(y)等同于x>y
例如:list1 = [1,2,3]
print(list1.__gt__([2]))
>>> False
返回值:bool
注:该方法主要判断依据是列表的第一个元素
赋值相加
格式:x.__iadd__(y)等同于x += y
例如:list1 = [1,2,3]
print(list1__iadd__('3'))
>>> [1, 2, 3, '3']
返回值:list
注:上述的y可以是list/tuple/str/dict/set等,但不可以是int,而且原列表也会改变。
赋值相乘
格式:x.__imul__(num)等同于x *= num
例如:list1 = [1,2,3]
print(list1.__imul__(2))
>>> [1,2,3,1,2,3]
返回值:list
注:num只能是int类型,而且原列表也会改变。
构造方法(修改原列表)
格式:x.__init__(y)
例如:list1 = [1,2,3]
list1.__init__([4,5])
print(list1)
>>> [4,5]
返回值:list
注:y不指定表示构造一个空列表
迭代器
格式:x.__iter__()等同于iter(x)
例如:list1 = [1,2,3]
die = list1.__iter__()
print(die.__next__())
>>> 1
返回值:迭代器
判断列表1是否小于等于列表2
格式:x.__le__(y)等同于x<=y
例如:list1 = [1,2,3]
print(list1.__le__([2]))
>>> True
返回值:bool
注:该方法主要判断依据是列表的第一个元素
列表长度
格式:x.__len__()等同于len(x)
例如:list1 = [1,2,3]
print(list1.__len__())
>>> 3
返回值:int
判断列表1是否小于列表2
格式:x.__lt__(y)等同于x<y
例如:list1 = [1,2,3]
print(list1.__lt__([2]))
>>> True
返回值:bool
注:该方法主要判断依据是列表的第一个元素
列表的相乘
格式:x.__mul__(num)等同于x*y
例如:list1 = [1,2,3]
print(list.__mul__(2))
>>> [1,2,3,1,2,3]
返回值:list
判断两个列表是否不相等
格式:x.__ne__(y)等同于x!=y
例如:list1 = [1,2,3]
print(list1.__ne__([4,5]))
>>> True
返回值:bool
重新定义列表
格式:x.__new__(list)
例如:list1 = [1,2,3]
print(list1.__new__(list))
>>> []
返回值:list
内置转换
格式:x.__repr__(self)
返回值:list
反转后迭代
格式:x.__reversed__()等同于reversed(x)
例如:list1 = [1,'2',3,'d','$']
die = list1.__reversed__()
print(die.__next__())
>>> '$'
返回值:迭代器
右→左 列表相乘
格式:x.__rmul__(num)等同于num*x
例如:list1 = [1,2,3]
print(list1.__rmul__(2))
>>> [1,2,3,1,2,3]
返回值:list
修改指定索引的元素(修改原列表)
格式:x.__getitem__(index,value)等同于x[index]=value
例如:list1 = [1,2,3]
list1.__getitem__(1,5)
print(list1)
>>> [1,5,3]
返回值:None
列表在内存中大小,转换为字节进行计算
格式:x.__sizeof__()
例如:list1 = [1,2,3]
list2 = [2,3]
print(list1.__sizeof__())
>>> 64
print(list2.__sizeof__())
>>> 56
返回值:int
#列表长度的不同,导致类别在内存中的大小也不一样。
2. 常用方法
原列表添加一个元素
格式:x.append(y)
#直接修改原列表,添加的元素可以任意对象,每次只能添加一个元素
例如:list1 = [1,2,3,4]
list1.append([1,2,3])
print(list1)
>>> [1,2,3,4,[1,2,3]]
返回值:None
清空原列表
格式:x.clear()
#删除列表中所有元素,列表本身不删除
例如:list1 = [1,2,3,4]
list1.clear()
print(list1)
>>> []
返回值:None
复制列表
格式:x.copy()
#复制原列表,生成一个新列表
例如:list1 = [1,2,3,4]
print(list1.copy())
>>> [1,2,3,4]
返回值:list
计数
格式:x.count(value)
#统计列表中指定元素的个数
例如:list1 = [1,2,2,3,4,2,3]
print(list1.count(2))
>>> 3
返回值:int
扩充列表
格式:x.extend()
#在原列表中扩充列表(修改原列表),两个列表合并为一个列表
例如:list1 = [1,2,3,4]
list1.extend(['1','2'])
print(list1)
>>> [1, 2, 3, 4, '1', '2']
返回值:None
取出指定元素值的索引
格式:x.index(value,strat,end)
#在指定的索引范围内,查找元素的索引,默认全列表查找
例如:list1 = [1, 2, 3, 4, '1', '2']
print(list1.index('1',2,5))
>>> 4
返回值:int
插入元素
格式:x.insert(index,object)
#在原列表中,指定索引位置处添加一个元素,元素可以是任意对象
例如:list1 = [1, 2, 3, 4, '1', '2']
list1.insert(3,'four')
print(list1)
>>> [1, 2, 3, 'four', 4, '1', '2']
返回值:None
取出指定索引的值
格式:x.pop(index)
#删除指定索引的值,默认从列表的最后面开始删除
例如:list1 = [1, 2, 3, 'four', 4, '1', '2']
print(list1.pop())
>>> '2'
print(list1.pop(2))
>>> 3
print(list1)
>>> [1, 2, 'four', 4, '1']
返回值:object
移除指定的元素
格式:x.remove(value)
#删除指定元素,直接修改原列表
例如:list1 = [1, 2, 3, 'four', 4, '1', '2']
list1.remove(3)
print(list1)
>>> [1, 2, 'four', 4, '1', '2']
返回值:None
反转
格式:x.reverse()
#对列表进行升序排序后再进行颠倒
例如:list1 = [1, 2, 3, 'four', 4, '1', '2']
list1.reverse()
print(list1)
>>> ['2', '1', 4, 'four', 3, 2, 1]
返回值:None
升序排序
格式:x.sort()
#对列表进行升序排序,一般int和str类型不能同时存在
例如:list1 = [6,2,3,4]
list1.sort()
print(list1)
>>> [2,3,4,6]
返回值:None
2. 列表的操作
1. 列表的基础操作
列表的相加
符号: +
格式: list1 + list2
返回值:list
列表的相乘
符号: *
格式: list * num
返回值:list
索引操作
符号: [index]
格式: list[index]
返回值:object
切片操作
符号:[::]
格式:list[index1:index2:num]
返回值:list
成员检测
符号: in
格式: object in list
返回值:bool
2. 列表序列操作函数
长度
格式:len(list)
返回值:int
最大值
格式:max(list)
返回值:int
注:该函数只能用于纯数字的列表。
最小值
格式:min(list)
返回值:int
注:该函数只能用于纯数字的列表。
转换为列表
格式:list(序列)
返回值:list
注:主要用于将其他对象转换为列表,或生成一个空列表
3. 列表的遍历函数
使用for...in遍历
格式:for variable in list:
使用variable
例如:list1 = [1,2,3]
for i in list1:
print(i)
>>> 1
>>> 2
>>> 3
while循环遍历
格式:variable = 0
while variable < len(list):
使用列表中的元素(list[variable])
variable += 1
例如:list1 = [1,2,3]
i = 0
while i < len(list1):
print(list1[i])
i += 1
>>> 1
>>> 2
>>> 3
二级列表的遍历
1. 格式:for variable1 in list:
for variable2 in variable1:
使用variable
例如:list1 = [['a','b','c'],['d','e','f'],['g','h','i']]
for i in list1:
for j in i:
print(j)
#输出的j就是大列表中列表的元素
2. 格式:for variable1,variable2,... in list:
直接使用variable1,variable2,...
例如:list1 = [['a','b','c'],['d','e','f'],['g','h','i']]
for n1,n2,n3 in list1:
print(n1)
>>> 'a'
>>> 'd'
>>> 'g'
注:方法2只能遍历同等长度的二级列表。
列表推导式
简单的列表推导式
格式:[variable for variable in list]
例如:list1 = [1,3,4,5]
print([i for i in list1])
>>> [1,3,4,5]
返回值:list
#只是把原来的列表遍历了一遍,生成了和原列表一样的列表
稍作修改的列表推导式
格式:['*'+variable+'*' for variable in list]
例如:list1 = ['a','b','c']
print(['*'+i+'*' for i in list1])
>>> ['*a*', '*b*', '*c*']
返回值:list
#对variable进行修改,可以是int的操作,也可以是str的操作,具体需根据列表元素来执行
带有判断条件的列表推导式
格式:[variable for variable in list if 条件表达式]
例如:list1 = [2,3,4,2,1,2,23,54,21,33]
print([i for i in list1 if i>20])
>>> [23, 54, 21, 33]
返回值:list
多个列表推导式
格式:[variable1+variable2 for variable1 in list1 for variable2 in list2]
例如:list1 = ['a','b','c']
list2 = ['I','love','you','!']
print([x+y for x in list1 for y in list2])
>>> ['aI', 'alove', 'ayou', 'a!', 'bI', 'blove', 'byou', 'b!', 'cI', 'clove', 'cyou', 'c!']
返回值:list
带有判断条件的多个列表推导式
格式:[variable1+variable2 for variable1 in list1 for variable2 in list2 if 条件表达式]
例如:list1 = ['a','b','c']
list2 = ['I','love','you','!']
print([x+y for x in list1 for y in list2 if list1.index(x)==list2.index(y)])
>>> ['aI', 'blove', 'cyou']
返回值:list
Python中list的功能介绍的更多相关文章
- Python中set的功能介绍
Set的功能介绍 1.集合的两种函数(方法) 1. 集合的内置函数 交集 格式:x.__and__(y)等同于x&y 例如:s1 = {'a',1,} s2 = {'b',1,} s3 = { ...
- Python中dict的功能介绍
Dict的功能介绍 1. 字典的两种函数(方法) 1. 字典的内置函数 包含关系 格式:x.__contains__(key)等同于key in x 例如:dic = {'ab':23,'cd':34 ...
- Python中tuple的功能介绍
Tuple的功能介绍 1. 元祖的两种方法 1. 元祖的内置方法 两个元祖的相加 格式:x.__add__(y)等同于x+y 例如:tu1 = (1,2,3,) print(tu1.__add__(( ...
- python中multiprocessing.pool函数介绍_正在拉磨_新浪博客
python中multiprocessing.pool函数介绍_正在拉磨_新浪博客 python中multiprocessing.pool函数介绍 (2010-06-10 03:46:5 ...
- laravel框架中超实用的功能介绍
本篇文章给大家带来的内容是关于laravel框架中超实用的功能介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 让lumen的dd() dump()像laravel一样优雅 1 c ...
- Docker 中的网络功能介绍 外部访问容器 容器互联 配置 DNS
Docker 中的网络功能介绍 | Docker 从入门到实践 https://vuepress.mirror.docker-practice.com/network/ Docker 允许通过外部访问 ...
- python中int的功能简单介绍
Int的功能介绍 1. 绝对值 x.__abs__()等同于abs(x) 2. 加法 x.__add__(y)等同于x+y 3. 与运算 x.__and__(y)等同于x&y 4. 布尔运算 ...
- [转载]python中multiprocessing.pool函数介绍
原文地址:http://blog.sina.com.cn/s/blog_5fa432b40101kwpi.html 作者:龙峰 摘自:http://hi.baidu.com/xjtukanif/blo ...
- Python中关于函数的介绍
一.什么是函数 当我们在日常工作中编写代码时,有没有发现这种情况,写了一套代码,却发现里面有很多段代码出现了有规律的重复,这样就不符合一个合格程序员的标准了,一个合格的程序员编写的代码最重 ...
随机推荐
- nyoj 鸡兔同笼
鸡兔同笼 时间限制:3000 ms | 内存限制:65535 KB 难度:1 描述 已知鸡和兔的总数量为n,总腿数为m.输入n和m,依次输出鸡和兔的数目,如果无解,则输出"No an ...
- angular路由守卫
路由守卫是指当用户满足了某些要求之后才可以离开或者进入某个页面或者场景的时候使用.比如说只有当用户填写了用户名和密码之后才可以进入首页,比如说用户离开某个页面时明月保存信息提示用户是否保存信息后再离 ...
- iot前台开发环境:前后台访问映射
一.前端映射- java代码 二.路由设置 -前台代码 三.访问应用
- SpringBoot应用的监控与管理
spring-boot-starter-actuator模块 /health /autoconfig /beans /configprops:应用配置属性信息 /env:环境属性,如:环境变量.jvm ...
- OAuth2.0学习(1-5)授权方式2-简化模式(implicit grant type)
授权方式2-简化模式(implicit grant type) 简化模式(implicit grant type)不通过第三方应用程序的服务器,直接在浏览器中向认证服务器申请令牌,跳过了"授 ...
- React-redux使用中有关Provider问题
先上错误: Warning: Failed prop type: Invalid prop `children` of type `array` supplied to `Provider`, exp ...
- iOS 封装.framework 以及使用
.framework是什么? .framework是什么? 这个问题相信做iOS的都知道答案. 在我们的日常开发中,经常会用到各种已经封装好的库,比如支付宝.微信SDK等等中的库,这些库可以给我们的开 ...
- SpringMVC(七):@RequestMapping下使用POJO对象绑定请求参数值
Spring MVC会按照请求参数名和POJO属性名进行自动匹配,自动为该对象填充属性值,支持级联属性. 如:address.city.dept.address.province等. 步骤一:定义Ac ...
- tkinter打招呼
import tkinter as tk #导入tkinter模块声明为tk class App:#创建一个类名称为App def __init__(self,master):#传入的参数顶层窗口在这 ...
- 如何从二维数组中的多个key中获取指定key的值?
精华 LOVEME96 2016-10-21 10:40:19 浏览(1512) 回答(3) 赞(0) 新手求教:二维数组中一般会有多个key,如果我们要获得指定key的值,应该怎么做? 问题标签: ...