Python学习日记(二) list操作
l = ['a','b','c','d',1,2,[3,'e',4]]
1.list.append()
在list的结尾新增一个新的元素,没有返回值,但会修改原列表
l.append(5)
print(l)
Output:
['a', 'b', 'c', 'd', 1, 2, [3, 'e', 4], 5]
2.list.insert()
list.insert(index,value) 在指定的index插入一个新的元素
l.insert(3,'ha1')
print(l)
Output:
['a', 'b', 'c', 'ha1', 'd', 1, 2, [3, 'e', 4]]
3.list.extend()
括号里的值必须是可迭代元素(字符串、串列、元祖、集合) 将括号内的元素逐一加到列表的最后
l.extend('abcd') #['a', 'b', 'c', 'd', 1, 2, [3, 'e', 4], 'a', 'b', 'c', 'd']
l.extend([123,2,'abc']) #['a', 'b', 'c', 'd', 1, 2, [3, 'e', 4], 123, 2, 'abc']
l.extend((1,2,[1,2,'abc'])) #['a', 'b', 'c', 'd', 1, 2, [3, 'e', 4], 1, 2, [1, 2, 'abc']]
4.list.pop()
list.pop(index = -1) 弹出列表中的一个元素,这里的默认元素为列表最后一个元素,并在结果返回元素值
l.pop() #['a', 'b', 'c', 'd', 1, 2]
l.pop(2) #['a', 'b', 'd', 1, 2, [3, 'e', 4]]
5.list.remove()
list.remove() 无返回值,删除元素的第一个匹配值
l.remove('a') #['b', 'c', 'd', 1, 2, [3, 'e', 4]]
6.list.clear()
用于清空列表
l.clear() #[]
7.del
del l[2] #['a', 'b', 'd', 1, 2, [3, 'e', 4]]
del l[2:] #['a', 'b']
del l[:-2] #[2, [3, 'e', 4]]
del l[::] #[]
del l[::-2] #['b', 'd', 2]
del l[::3] #['b', 'c', 1, 2]
8.改值
<1>按照索引改值
l[6][0] = 'g' #['a', 'b', 'c', 'd', 1, 2, ['g', 'e', 4]]
<2>切片改值(逐一增加)
l[6][0:2] = 'abcd' #['a', 'b', 'c', 'd', 1, 2, ['a', 'b', 'c', 'd', 4]]
<3>按照切片间隔改值遵循一一对应原则
l[6][::] = 'abc' #['a', 'b', 'abcd', 'd', 1, 2, ['a', 'b', 'c']]
l[::2] = 'abcd' #['a', 'b', 'b', 'd', 'c', 2, 'd']
9.查值
通过切片或者for循环查值
10.公共方法
<1>len()
计算列表的长度大小
print(len(l)) #
<2>list.count()
统计列表中该元素出现的个数
print(l.count(2)) #
<3>list.index()
list.index(substr,start,end) 获取该字符串在原字符串内的索引值,若找到则返回索引值,若未找到则返回错误
index_val = l.index("c",1,5) #
print(index_val)
11.排序
<1>list.sort()
正向排序:
l = [1,5,6,8,9,10,2]
l.sort() #[1, 2, 5, 6, 8, 9, 10]
print(l)
逆向排序:
l = [1,5,6,8,9,10,2]
l.sort(reverse = True) #[10, 9, 8, 6, 5, 2, 1]
print(l)
<2>list.reverse()
将列表的元素翻转:
l = [1,5,6,8,9,10,2]
l.reverse() #[2, 10, 9, 8, 6, 5, 1]
print(l)
Python学习日记(二) list操作的更多相关文章
- Python学习日记(二十八) hashlib模块、configparse模块、logging模块
hashlib模块 主要提供字符加密算法功能,如md5.sha1.sha224.sha512.sha384等,这里的加密算法称为摘要算法.什么是摘要算法?它又称为哈希算法.散列算法,它通过一个函数把任 ...
- Python学习日记:day8-------文件操作
文件操作 1,文件路径:d:\xxxx.txt 绝对路径:从根目录到最后 相对路径:当前目录下的文件 2,编码方式:utf-8 3,操作方式:只读,只写,追加,读写,写读...... ...
- Python学习日记(二十六) 封装和几个装饰器函数
封装 广义上的封装,它其实是一种面向对象的思想,它能够保护代码;狭义上的封装是面向对象三大特性之一,能把属性和方法都藏起来不让人看见 私有属性 私有属性表示方式即在一个属性名前加上两个双下划线 cla ...
- Python学习日记(二十三) 类命名空间和组合
类命名空间 在一个类中它的函数(方法)属于动态属性,直接定义的变量属于静态属性 首先先定义一个类,并在这个类里面加入静态变量.属性等然后将一个对象实例化 class Fighter: #定义一个战机的 ...
- Python学习日记(二十一) 异常处理
程序中异常的类型 BaseException 所有异常的基类 SystemExit 解释器请求退出 KeyboardInterrupt 用户中断执行(通常是输入^C) Exception 常规错误的基 ...
- python学习日记(文件操作练习题)
登录注册(三次机会) name = input('请注册姓名:') password = input('请注册密码:') with open('log',mode='w',encoding='utf- ...
- Python学习日记(二十七) 反射和几个内置函数
isinstance() 判断isinstance(obj,cls)中obj是否是cls类的对象 class Person: def __init__(self,name): self.name = ...
- Python学习日记(二十五) 接口类、抽象类、多态
接口类 继承有两种用途:继承基类的方法,并且做出自己的改变或扩展(代码重用)和声明某个子类兼容于某基类,定义一个接口类interface,接口类中定义了一些接口名(就是函数名)且并未实现接口的功能,子 ...
- Python学习日记(二十四) 继承
继承 什么是继承?就是一个派生类(derived class)继承基类(base class)的字段和方法.一个类可以被多个类继承;在python中,一个类可以继承多个类. 父类可以称为基类和超类,而 ...
随机推荐
- bat脚本的基本命令语法
bat脚本的基本命令语法 一.批处理的常见命令 1.REM 和 :: 2.ECHO 和 @ 3.PAUSE 4.ERRORLEVEL 5.TITLE 6.COL ...
- git - 3.分支
分支介绍 每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支.截止到目前,只有一条时间线, 在Git里,这个分支叫主分支,即master分支. HEAD严格来说不是指向提交,而是指向mas ...
- ttyS 串口名称被占用
ttyS 的串口设备名称,我一直觉得是没有问题的,今天才想起来,8250驱动命名了 ttyS的名称,需要将 8250 的驱动删除 , ttyS 的串口名称即可正常使用. 如下 这样 ttyS 的名称即 ...
- RSA签名,加解密处理核心文件
import java.io.ByteArrayOutputStream; import java.io.UnsupportedEncodingException; import java.secur ...
- Qt编写气体安全管理系统29-跨平台
一.前言 Qt的跨平台特性是非常厉害的,本来作为C++来说,跨平台的特性比JAVA还要好,只不过学习难度更大,所以大家更理解的跨平台是JAVA,Qt的跨平台特性是我见过的所有开发环境和语言中最厉害的, ...
- net ads join 和net rpc join命令的区别
要将主机加入Active Directory(AD),请输入: #net ads加入-U administrator 输入管理员密码:Passw0rd 使用短域名 - SAMDOM 加入'M1'到dn ...
- [LeetCode] 160. Intersection of Two Linked Lists 求两个链表的交集
Write a program to find the node at which the intersection of two singly linked lists begins. For ex ...
- 【视频开发】【Live555】live555实现h264码流RTSP传输
1.概述 liveMedia 库中有一系列类,基类是Medium,这些类针对不同的流媒体类型和编码. 其中的StreamFrame类文件(如MPEG4VideoStreamFramer)为流传输关键. ...
- 使用Nginx+WordPress搭建个人网站
背景 很多研究技术的朋友喜欢写博客.如果希望搭建一个完全属于自己的网站,也并不困难.这里简要分享一下我搭建这个博客网站的经验. 关键步骤 购买服务器.域名.DNS云解析服务 网站备案(可选) 安装Ng ...
- 百练1724 ROADS
总时间限制: 1000ms 内存限制: 65536kB 描述 N cities named with numbers 1 ... N are connected with one-way roa ...