列表

列表和字符串之间的转换

>>> 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. C#中的元组对象Tuple

    原文:C#中的元组对象Tuple 一.什么是元组 元组就是一些对象的集合,在我们编程时,比如一个人的信息,我们常常创建一个Person类去描述一个人,传统的做法如下: public class Per ...

  2. CSS3 动画Animation的8大属性

    animation复合属性.检索或设置对象所应用的动画特效. 如果有多个属性值时以","隔开,适用于所有元素,包含伪对象:after和:before 1.animation-nam ...

  3. 理解Java GC日志

    idea 在vm options处加入-XX:+PrintGCDetails,可打印GC日志. public class ReferenceCountingGC { public Object ins ...

  4. 编写Android.mk中的LOCAL_SRC_FILES的终极技巧(转)

    转自:http://blog.csdn.net/fu_zk/article/details/12836431 问题的引入 在使用NDK编译C/C++项目的过程中,免不了要编写Android.mk文件, ...

  5. leetcode-162周赛-1252-奇数值单元格数目

    题目描述: 自己的提交: class Solution: def oddCells(self, n: int, m: int, indices: List[List[int]]) -> int: ...

  6. php上传文件(简易版)

    1.前台form表单处添加 enctype="multipart/form-data" 2. //上传文件保存到目录 header("content-type:text/ ...

  7. 性能超过DRUID的最强数据库连接池——HikariCP相关配置及简单示例

    在配置application.yml时,对hikari的配置会有这样一个字段validationQuery. validationQuery是用来验证数据库连接的查询语句,这个查询语句必须是至少返回一 ...

  8. Framework7-Vue的UI组件代码

    Framework7-Vue提供了一套UI组件库,想要什么效果,直接到上面复制代码即可 http://www.framework7.cn/ 这里有非常多的ui组件,基本上可以满足项目中的大部分需求 h ...

  9. HBase与Sqoop集成案例

    HBase与Sqoop集成 案例:将RDBMS中的数据抽取到HBase中 Step1.配置sqoop-env.sh如下: Step2.在Mysql中创建一张数据库library,一张表book CRE ...

  10. php 空格,换行,跳格使用说明

    首先说说\n,\r,\t \n 软回车: 在Windows 中表示换行且回到下一行的最开始位置 在Linux.unix 中只表示换行,但不会回到下一行的开始位置. \r 软空格: 在Linux.uni ...