列表

列表和字符串之间的转换

>>> li = list('hello')
>>> li
['h', 'e', 'l', 'l', 'o']
>>> li[0] = 'H'
>>> li
['H', 'e', 'l', 'l', 'o']
>>> ''.join(li)
'Hello'
>>>

列表删除元素

>>> numbers
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>>
>>> del numbers[0:3]
>>> numbers
[4, 5, 6, 7, 8, 9, 10]
>>>

给切片赋值

切片赋值,可同时给多个元素赋值,可将切片替换为长度与其不同的序列。

>>> name = list('Perl')
>>> name[1:] = 'ython'
>>> name
['P', 'y', 't', 'h', 'o', 'n']

使用切片赋值还可以在不替换原有元素的情况下插入新元素。

>>> numbers = [1, 5]
>>> numbers[1:1]
[]
>>> numbers[1:1] = [2, 3, 4]
>>> numbers
[1, 2, 3, 4, 5]

append

将对象附加到列表末尾。

>>> numbers
[11, 10, 9, 8, 7]
>>> numbers.append(1)
>>> numbers
[11, 10, 9, 8, 7, 1]

clear

清空列表内容。

>>> numbers
[11, 10, 9, 8, 7, 1]
>>> numbers.clear()
>>> numbers
[]

copy

复制列表,常规复制只是将另一个名称关联到列表。

>>> a = [1, 2, 3]
>>> b = a
>>> b
[1, 2, 3]
>>> a[1] = 4
>>> a
[1, 4, 3]
>>> b
[1, 4, 3]

要让a和b指向不同的列表,就必须让b关联a的副本。

>>> a = [1, 2, 3]
>>> b = a.copy()
>>> b
[1, 2, 3]
>>> b[1] = 4
>>> b
[1, 4, 3]
>>> a
[1, 2, 3]

count

计算指定元素在列表中出现的次数。

>>> ['to', 'be', 'or', 'not', 'to', 'be'].count('to')
2

extend

可以将多个值附加到列表末尾,可以将这些值的序列作为参数提供给extend方法。

>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> a.extend(b)
>>> a
[1, 2, 3, 4, 5, 6]
>>>

这种效果类似于拼接,不同的是,extend会修改即将被扩展的序列,而拼接则是返回一个全新的序列。

index

在列表中查找某个值第一次出现的索引。

>>> knights = ['We', 'are', 'the', 'knights', 'who', 'say', 'ni']
>>> knights.index('who')
4

insert

将一个对象插入列表。

>>> numbers = [1, 2, 3, 4, 5, 6]
>>> numbers
[1, 2, 3, 4, 5, 6]
>>> numbers.insert(3, 'four')
>>> numbers
[1, 2, 3, 'four', 4, 5, 6]
>>>

pop

从列表中删除一个元素(默认是最后一个元素),并返回这一元素。

>>> numbers
[1, 2, 3, 'four', 4, 5, 6]
>>> numbers.pop()
6
>>> numbers.pop(-2)
4

remove

删除第一个为指定值的元素

>>> x = ['a', 'b', 'a', 'c', 'd']
>>> x.remove('a')
>>> x
['b', 'a', 'c', 'd']
>>>

reverse

对列表中的元素反向排序

>>> numbers = [1, 2, 3]
>>> numbers.reverse()
>>> numbers
[3, 2, 1]

sort

对列表就地排序,就地排序意味着对原来的列表进行修改,使其元素按顺序排列,而不是返回排序后的列表的副本。

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

sort接受两个可选参数:key和reverse,这两个参数通常按名称指定的,称为关键词参数。

设置一个用于排序的函数,使用它来为每个元素创建一个键,根据这些键为元素进行排序。

>>> x = ['apple', 'tomato', 'banana', 'orange', 'pear']
>>> x.sort(key=len)
>>> x
['pear', 'apple', 'tomato', 'banana', 'orange']
>>>

reverse指定一个真值(True,False)来对列表进行正向或反向排序。

>>> numbers = ['5', '4', '7', '9', '2']
>>> numbers.sort(reverse=True)
>>> numbers
['9', '7', '5', '4', '2']
>>> numbers.sort(reverse=False)
>>> numbers
['2', '4', '5', '7', '9']

元组

与列表一样,元组也是序列,唯一差别是元组是不可修改的。只要将一些值以逗号分隔,就能自动创建一个元组。

只包含一个值的元组

>>> 42,
(42,)

空元组

>>> ()
()

tuple

将一个序列作为参数,并转换为元组。

>>> tuple([1, 2 , 3])
(1, 2, 3)
>>> tuple('python')
('p', 'y', 't', 'h', 'o', 'n')
>>>

笔记:Python列表和元组的更多相关文章

  1. 认识Python 列表和元组

    列表用方括号   l=[['xyz',123], 'abc', 3140000000.0, (23+1.3j), 'ddd'] 元组用圆括号   t=(['xyz', 123],'abc', 3140 ...

  2. Python列表、元组、字典和字符串的常用函数

    Python列表.元组.字典和字符串的常用函数 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中 ...

  3. python列表与元组的用法

    python列表与元组的用法 目录: 列表的用法: 1.增   append   +    extend 2.删  del    remove 3.改   insert 4.查  index 5.反向 ...

  4. (转)python 列表与元组的操作简介

    python 列表与元组的操作简介 原文:https://www.cnblogs.com/QG-whz/p/4782809.html 阅读目录 列表 list函数 列表的基本操作 列表方法 元组 tu ...

  5. python学习笔记之列表与元组

    一.概述 python包含6种内建的序列,其中列表和元组是最常用的两种类型.列表和元组的主要区别在于,列表可以修改,元组则不能修改 使用上,如果要根据要求来添加元素,应当使用列表:而由于要求序列不可修 ...

  6. Python学习笔记_week2_列表、元组、字典、字符串、文件、i编码

    一. 列表.元组 names=["A","B","C","D"] print(names) print(names[0] ...

  7. python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...

  8. Python列表和元组

    Python是没有数组的概念,但是和数组比较相近的概念是列表和元素. 下面两个例子展示列表和元组. # coding=utf-8 # 元组 students = ('小明', '小黄', '小李', ...

  9. #9 Python列表和元组

    前言 Python中有6种序列:列表.元组.字符串.Unicode字符串.buffer对象和xrange对象.序列通用操作包括:索引.切片.长度.加.乘.最大值.最小值,遍历和检查成员.虽然Pytho ...

  10. Python: 列表,元组,字典的区别

    Python中有3种内建的数据结构:列表,元组和字典 1.列表 list是处理一组有序项目的数据结构,即可以在一个列表中存储一个序列的项目.列表中项目应该包括在方括号中,这样python就知道是在指明 ...

随机推荐

  1. spring_AOP的注解开发

    logger日志类: package cn.mepu.utils; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.la ...

  2. 我的黑苹果之路 9400f + msi b360 mortar + 1050ti

    硬件配置: CPU:i5 9400f 主板:微型msi迫击炮B360 内存:威刚 ddr4 8g 2133 *2 显卡:技嘉1050ti 4g 显示器:koiso 4K (使用的dp接口连接,hdmi ...

  3. python使用SMTP发邮件时使用Cc(抄送)和Bcc(密送)

    SMTP发送邮件的时候,并没有特殊的通信语句告诉邮件服务器 谁是主送,谁是抄送/密送,这三个角色都是以同样的方式告诉邮件服务器的,然后重点在邮件内容里. 邮件内容分为头和体两部分(就像http),头部 ...

  4. 浅谈异步上传插件 jquery-file-upload插件

    当我们需要异步上传文件的时候,我们倾向于在网上查找相关的JQuery插件,jquery-file-upload就是我们经常看到的,但是他的主页是英文的,对于我们这些英语比较差的同学来说,简直就是... ...

  5. ApiCloud如何一键真机测试

    首先假设你已经有了APICloud账号,并创建了App项目. 需要注意的是,手机和电脑需要连接在同一wifi环境下. 第一步 下载自定义Loader 进入“开发控制台” 点击我们的项目 选择模块,再选 ...

  6. js正则删除字符串中的部分内容

    // 例如 let a = `(ID)444` a.replace(/\(ID\)/ig, '') // 结果 "444"

  7. MySQL - primary key PK unique key,key PK index

    primary key PK unique key 总结 primary key = unique + not null 主键不能为空每个字段值都不重复,unique可以为空,非空字段不重复 uniq ...

  8. SQL 按关键字排序

    SQL ORDER BY Keyword(按关键字排序) ORDER BY 关键字用于对结果集进行排序. SQL ORDER BY 关键字 ORDER BY 关键字用于按升序或降序对结果集进行排序. ...

  9. 【文件分层】/var/run

    /var/run是干什么用的 根据linux的文件系统分层结构标准(FHS)中的定义: /var/run 目录中存放的是自系统启动以来描述系统信息的文件. 比较常见的用途是daemon进程将自己的pi ...

  10. 排序算法(三)堆排序及有界堆排序Java实现及分析

    1.堆排序基数排序适用于大小有界的东西,除了他之外,还有一种你可能遇到的其它专用排序算法:有界堆排序.如果你在处理非常大的数据集,你想要得到前 10 个或者前k个元素,其中k远小于n,它是很有用的. ...