list文档
文档
class list(object):
"""
list() -> new empty list
list(iterable) -> new list initialized from iterable's items
"""
def append(self, p_object): # real signature unknown; restored from __doc__
"""
L.append(object) -> None -- append object to end
在列表的最后添加元素
"""
pass def clear(self): # real signature unknown; restored from __doc__
"""
L.clear() -> None -- remove all items from L
清楚列表所有元素
"""
pass def copy(self): # real signature unknown; restored from __doc__
"""
L.copy() -> list -- a shallow copy of L
复制一个列表
需要注意的是这个拷贝是‘浅拷贝’:
如果列表只有一层(如:l=[1,2,3]),那么l的copy后列表跟l的内存地址是不同的,但是,
但是,如果l里面嵌套的还有列表(如:l = [1,2,3,[5,6]]),那么,虽然外层列表地址不同
但是嵌套的[5,6]这个列表(也就是l[3])的内存地址跟copy后的内存地址不同 ----------------------------------------------------------------------------
l1 = [1,2,[3,4]]
l2 = l1.copy()
print(l1 == l2) # True
print(l1 is l2) # False
print(l1[2] is l2[2]) # True l1[2].append('8') # 往子列表l[2]里添加元素,l2也会随之改变
print(l2) # [1, 2, [3, 4, '8']]
----------------------------------------------------------------------------
如果要深拷贝,则需要导入deepcopy模块
import copy l1 = [1,2,[3,4]]
l2 = copy.deepcopy(l1)
print(l1 == l2) # True
print(l2 is l1) # False l1[2].append('8') #往子列表l[2]里添加元素,l2不会随之改变
print(l1) # [1, 2, [3, 4, '8']]
print(l2) # [1, 2, [3, 4]]
"""
return [] def count(self, value): # real signature unknown; restored from __doc__
"""
L.count(value) -> integer -- return number of occurrences of value
计算一个元素在一个列表里出现的次数
"""
return 0 def extend(self, iterable): # real signature unknown; restored from __doc__
"""
L.extend(iterable) -> None -- extend list by appending elements from the iterable
往列表里拓展元素,参数必须是一个可迭代对象(包括列表,元组以及字符串等……)
"""
pass def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__
"""
L.index(value, [start, [stop]]) -> integer -- return first index of value.
Raises ValueError if the value is not present.
获取列表中某一个元素的索引值,如果有重复元素,只返回第一个
也可以用可选参数start和stop来指定查找范围
"""
return 0 def insert(self, index, p_object): # real signature unknown; restored from __doc__
"""
L.insert(index, object) -- insert object before index
在指定位置的前一个位置插入指定元素
""" pass def pop(self, index=None): # real signature unknown; restored from __doc__
"""
L.pop([index]) -> item -- remove and return item at index (default last).
Raises IndexError if list is empty or index is out of range.
删除列表的元素,可以按索引来指定删除的元素,不指定的话默认删除最后一个
如果指定索引超出范围,则会报错
"""
pass def remove(self, value): # real signature unknown; restored from __doc__
"""
L.remove(value) -> None -- remove first occurrence of value.
Raises ValueError if the value is not present.
按照元素值来删除列表的元素
如果指定元素不存在则会报错
"""
pass def reverse(self): # real signature unknown; restored from __doc__
"""
L.reverse() -- reverse *IN PLACE*
将一个列表反转
"""
pass def sort(self, key=None, reverse=False): # real signature unknown; restored from __doc__
"""
L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE*
将列表按照指定的规则排序
可以用key来指定排序规则,不指定的话默认按照asc码来排序
字符串不能跟数字类型一起排序
----------------------------------------------------------------------
l1 = [1,2,5,3,8,6]
l1.sort()
print(l1) # [1, 2, 3, 5, 6, 8] l2 = ['c','b','a'] # ['a', 'b', 'c']
l2.sort()
print(l2) l3 = ['fuyong','age','name']
l3.sort()
print(l3) # ['age', 'fuyong', 'name']
----------------------------------------------------------------------
key是一个可选的参数,接收一个函数名或者一个匿名函数
l4 = [(1,3),(2,1),(3,2)]
l4.sort(key=lambda x:x[0])
print(l4) # [(1, 3), (2, 1), (3, 2)]
l4.sort(key=lambda x:x[1])
print(l4) # [(2, 1), (3, 2), (1, 3)]
----------------------------------------------------------------------
l5 = [{'age':13},{'age':18},{'age':16}]
l5.sort(key=lambda x:x['age'])
print(l5) # [{'age': 13}, {'age': 16}, {'age': 18}]
----------------------------------------------------------------------
可以用reverse参数来指定是正序还是倒叙,不指定的话默认正序
l5.sort(key=lambda x:x['age'],reverse=True
print(l5) # [{'age': 18}, {'age': 16}, {'age': 13}]
"""
pass
示例
l1 = [1,2,[3,4]]
l2 = l1.copy() print(l1 == l2)
print(l1 is l2)
print(l1[2] is l2[2]) l1[2].append('8')
print(l2) import copy l1 = [1,2,[3,4]]
l2 = copy.deepcopy(l1)
print(l1 == l2)
print(l2 is l1) l1[2].append('8')
print(l1)
print(l2) l = [1,2,3,4,5,6]
l.pop()
print(l)
l.pop(3)
print(l) l1 = [1,2,5,3,8,6]
l1.sort()
print(l1) l2 = ['c','b','a']
l2.sort()
print(l2) l3 = ['fuyong','age','name']
l3.sort()
print(l3) l4 = [(1,3),(2,1),(3,2)]
l4.sort(key=lambda x:x[0])
print(l4)
l4.sort(key=lambda x:x[1])
print(l4) l5 = [{'age':13},{'age':18},{'age':16}]
l5.sort(key=lambda x:x['age'])
print(l5)
l5.sort(key=lambda x:x['age'],reverse=True)
print(l5)
list文档的更多相关文章
- C#给PDF文档添加文本和图片页眉
页眉常用于显示文档的附加信息,我们可以在页眉中插入文本或者图形,例如,页码.日期.公司徽标.文档标题.文件名或作者名等等.那么我们如何以编程的方式添加页眉呢?今天,这篇文章向大家分享如何使用了免费组件 ...
- dotNET跨平台相关文档整理
一直在从事C#开发的相关技术工作,从C# 1.0一路用到现在的C# 6.0, 通常情况下被局限于Windows平台,Mono项目把我们C#程序带到了Windows之外的平台,在工作之余花了很多时间在M ...
- ABP文档 - Javascript Api - AJAX
本节内容: AJAX操作相关问题 ABP的方式 AJAX 返回信息 处理错误 HTTP 状态码 WrapResult和DontWrapResult特性 Asp.net Mvc 控制器 Asp.net ...
- ABP文档 - EntityFramework 集成
文档目录 本节内容: Nuget 包 DbContext 仓储 默认仓储 自定义仓储 特定的仓储基类 自定义仓储示例 仓储最佳实践 ABP可使用任何ORM框架,它已经内置了EntityFrame(以下 ...
- ABP文档 - SignalR 集成
文档目录 本节内容: 简介 安装 服务端 客户端 连接确立 内置功能 通知 在线客户端 帕斯卡 vs 骆峰式 你的SignalR代码 简介 使用Abp.Web.SignalR nuget包,使基于应用 ...
- ABP文档 - 通知系统
文档目录 本节内容: 简介 发送模式 通知类型 通知数据 通知重要性 关于通知持久化 订阅通知 发布通知 用户通知管理器 实时通知 客户端 通知存储 通知定义 简介 通知用来告知用户系统里特定的事件发 ...
- ABP文档 - Hangfire 集成
文档目录 本节内容: 简介 集成 Hangfire 面板授权 简介 Hangfire是一个综合的后台作业管理器,可以在ABP里集成它替代默认的后台作业管理器,你可以为Hangfire使用相同的后台作业 ...
- ABP文档 - 后台作业和工作者
文档目录 本节内容: 简介 后台作业 关于作业持久化 创建一个后台作业 在队列里添加一个新作业 默认的后台作业管理器 后台作业存储 配置 禁用作业执行 Hangfire 集成 后台工作者 创建一个后台 ...
- ABP文档 - Javascript Api
文档目录 本节内容: AJAX Notification Message UI Block & Busy Event Bus Logging Other Utility Functions A ...
- ABP文档 - 导航
文档目录 本节内容: 创建菜单 注册导航供应器 显示菜单 每个web应用都有一些菜单用来在页面/屏幕之间导航,ABP提供了一个通用的基础框架创建并显示菜单给用户. 创建菜单 一个应用可能由不同模块组成 ...
随机推荐
- 跟着百度学习php之ThinkPHP的运行流程-2
Thinkphp为了提高编译的效率,第一次运行的时候thinkphp会把文件全部编译到temp目录下的~runtime.php文件,在第二次运行的时候会直接读取这个文件.所以我们在线下自己写代码测试的 ...
- swift学习经验和错误记录
1.selector 和action 直接用字符串,后面要加冒号":" 2.StoryBoard 连接后改名又重新连接出现了找不到符号的诡异错误,unknow class xxxx ...
- PHP——0128练习相关1——window.open()
Window.open()方法参数详解 1, 最基本的弹出窗口代码 window.open('page.html'); 2, 经过设置后的弹出窗口 window.open('page.html ...
- OSX活动监视器关闭spotlight 、mds_stores等进程
如果是机械盘,spotlight .mds_stores严重影响使用体验 今天早上一开机,设备速度慢的受不了,随便打开一个应用都几分钟.通过top查看,CPU剩余90%以上.所以并不是CPU不足导致. ...
- Spring.Net框架三:使用Spring.Net框架实现多数据库
在前面的两篇文章中简单介绍了Spring.Net和如何搭建Spring.Net的环境,在本篇文章中将使用Spring.Net实现多数据库的切换. 一.建立一个空白的解决方案,名称为“SpringDot ...
- C++ 类的继承三(继承中的构造与析构)
//继承中的构造与析构 #include<iostream> using namespace std; /* 继承中的构造析构调用原则 1.子类对象在创建时会首先调用父类的构造函数 2.父 ...
- Js 的几种去重(一维)
写的几种数组去重方法: 第一种: [利用排序方法,然后比较当前元素与下一个元素是否相等] function repeat1(arr) { var length = arr.length; var re ...
- C#中文件和byte[]互换问题
如何将图片和声音转化成byte[],并通过webservice进行传输? 如何将webservice传输过来的byte[],转化成我们想要的文件? (一)文件转化为byte[] 方法 ...
- 编程之美 set 12 快速找出故障机器
题目 1. 所有的 ID 都出现 2 次, 只有一个例外, 找到那个例外的 ID 2. 所有的 ID 都出现两次, 只有两个例外, 找出例外的那两个 总计 1. 剑指 offer 上有这两道题的解法, ...
- Axure 8 注册码,市面上很多注册码都不行用,但是这个可以。
找了很久了,感谢@Quan-Sunny的转载 Licensee: University of Science and Technology of China (CLASSROOM) Key: DTXR ...