1.前言

列表是Python中最常用的数据类型之一,是以[ ]括起来,每个元素以逗号隔开,而且里面可以存放各种数据类型,而且列表是有序的,有索引值,可切片,方便取值。

2.创建列表

li = ['hello' , 'world' , 'china']
print(li)
#输出
['hello', 'world', 'china']

3.访问列表中的元素

以索引方式访问

li = ['hello' , 'world' , 'china']
print(li[0])
print(li[1])
print(li[2])
#输出
'hello'
'world'
'china'

以切片方式访问(包左不包右)

li = ['hello' , 'world' , 'china' , 'dog' , 'cat']
print(li[0:3]) #打印索引从0到3的元素,不包含索引为3的元素
print(li[1:]) #打印索引从1开始,一直到列表结束所有元素
print(li[:-1]) #打印索引从0到倒数第2个元素之间的所有元素
#输出
['hello', 'world', 'china']
['world', 'china', 'dog', 'cat']
['hello', 'world', 'china', 'dog']

4.列表元素的增

append(obj)

将新元素obj追加到列表的末尾。

li = ['hello' , 'world' , 'china']
li.append('中国')
print(li)
#输出
['hello', 'world', 'china','中国']

insert(index, obj)

将元素obj插入到列表的第index索引位置。

li = ['hello' , 'world' , 'china']
li.insert(1,'中国')
print(li)
#输出
['hello', '中国', 'world', 'china']

extend()

用于在列表末尾一次性追加另一个序列中的多个值。

li1 = ['hello' , 'world' , 'china']
li2 = [1,2,3,4,5]
li1.extend(li2)
print(li1)
#输出
['hello', 'world', 'china', 1, 2, 3, 4, 5]

5.列表元素的删

pop()

用于删除列表中的最后一个元素,并且返回该元素的值。

li = ['hello' , 'world' , 'china']
res = li.pop()
print(li)
print(res)
#输出
['hello', 'world']
'china'

remove(obj)

根据元素的值进行删除:删除列表中元素为obj的那一项(如果有多个只删除第一个)。

li = ['hello' , 'world' , 'china' , 'world']
li.remove('world')
print(li)
#输出
['hello', 'china', 'world']

del

  • 根据元素的下标或切片进行删除:删除列表中下标为n的那一项.
li = ['hello' , 'world' , 'china' , 'world']
del li[2] #删除下标为2的元素
print(li)
#输出
['hello', 'world', 'world']
  • 删除整个列表
li = ['hello' , 'world' , 'china' , 'world']
del li #删除整个列表
print(li)
#输出
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'li' is not defined

clear()

清空列表

li = ['hello' , 'world' , 'china' , 'world']
li.clear()
print(li)
#输出
[]

6.列表元素的改

  • 按照索引修改列表中的元素
li = ['hello' , 'world' , 'china' , 'world']
li[1] = 'hahaha'
print(li)
#输出
['hello', 'hahaha', 'china', 'world']
  • 按照切片修改列表中的元素
li = ['hello' , 'world' , 'china' , 'world']
li[1:3] = ['hahaha1' , 'haha2']
print(li)
#输出
['hello', 'hahaha1', 'haha2', 'world']

7.列表元素的查

同访问列表中的元素

列表的其他方法

sort()

对列表中的元素进行排序,默认为从小到大排序

li = [1,6,2,3,9,3,1]
li.sort()
print(li)
#输出
[1, 1, 2, 3, 3, 6, 9]

reverse()

反向列表中元素

li = ['hello' , 'world' , 'china' , 'world']
li.reverse()
print(li)
#输出
['world', 'china', 'world', 'hello']

count(obj)

统计元素obj在列表中出现的次数

li = ['hello' , 'world' , 'china' , 'world']
res = li.count('world')
print(res)
#输出
2

8.列表的遍历

遍历列表中的每个元素

li = ['hello' , 'world' , 'china' , 'world']
for item in li:
print(item)
#输出
'hello'
'world'
'china'
'world'

带下标遍历列表中的每个元素

li = ['hello' , 'world' , 'china' , 'world']
for item in enumerate(li):
print(item)
#输出
(0, 'hello')
(1, 'world')
(2, 'china')
(3, 'world')

python学习之【第四篇】:Python中的列表及其所具有的方法的更多相关文章

  1. Python学习系列(四)Python 入门语法规则2

    Python学习系列(四)Python 入门语法规则2 2017-4-3 09:18:04 编码和解码 Unicode.gbk,utf8之间的关系 2.对于py2.7, 如果utf8>gbk, ...

  2. [Python学习笔记][第四章Python字符串]

    2016/1/28学习内容 第四章 Python字符串与正则表达式之字符串 编码规则 UTF-8 以1个字节表示英语字符(兼容ASCII),以3个字节表示中文及其他语言,UTF-8对全世界所有国家需要 ...

  3. Python学习笔记(四)Python程序的控制结构

    在学习了 Python 的基本数据类型后,我们就要开始接触Python程序的控制结构,了解 Python 是如何使用控制结构来更改程序的执行顺序以满足多样的功能需求.如果有的小伙伴在之前学过C语言,j ...

  4. python学习【第四篇】python函数 (一)

    一.函数的介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以 ...

  5. Python 学习 第十四篇:命名元组

    Python的元组不能为元组内部的数据进行命名,而 collections.namedtuple 可以来构造一个含有字段名称的元组类,命名元组可以通过逗号+字段名来获取元素值: collections ...

  6. Python学习【第四篇】用户输入及判断

    用户输入: 例1.写一个用户输入密码的小程序,流程如下: 1.用户输入自己的用户名 2.打印"Hello+用户名" #!/usr/bin/env python #name = ra ...

  7. Python学习第十四篇——类初步使用及面向对象思想

    class Restaurant(): def __init__(self,restaurant_name,cuisine_type): self.name = restaurant_name sel ...

  8. Python学习日记(四)——Python基本数据类型梳理(int、str、list、tuple、dict)

    数字(int) 1.创建方式 n1 = 123 n2 = int(123) 2.内存分配 #共同用一个内存地址的情况 n1 = 123 n2 = n1 #用两个内存地址的情况 n1 = 123 n2 ...

  9. python学习笔记(四)---python不能输出中文问题

    只需要在所有代码的最前面加上:#coding:utf-8 即可

  10. Python学习笔记之基础篇(-)python介绍与安装

    Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...

随机推荐

  1. Windows中利用共享内存来实现不同进程间的通信

    Windows中利用共享内存来实现不同进程间的通信 一.msdn详细介绍 https://docs.microsoft.com/zh-cn/windows/win32/memory/sharing-f ...

  2. 对BUG的分析与理解

    对BUG的分析与理解 bug的分类 bug,其实就是软件期望的行为与实际行为的差异.从程序的角度来看,在软件整个生命周期中都会有bug的出现.需求分析过程中,需求理解的不足,导致的理解错位 ,遗漏甚至 ...

  3. ef core实现软删除

    很多web程序一般的偶不会设计真的物理删除了. 基本上都是在在数据库加一个标记,就得当作已经删除了.同时在查询的时候,过滤已经标记删除的数据 ef core实现软删除是非常简单的,直接在OnModel ...

  4. Linux内存描述之内存区域zone–Linux内存管理(三)

    服务器体系与共享存储器架构 日期 内核版本 架构 作者 GitHub CSDN 2016-06-14 Linux-4.7 X86 & arm gatieme LinuxDeviceDriver ...

  5. Anrlr4 生成C++版本的语法解析器

    一. 写在前面 我最早是在2005年,首次在实际开发中实现语法解析器,当时调研了Yacc&Lex,觉得风格不是太好,关键当时yacc对多线程也支持的不太好,接着就又学习了Bison&F ...

  6. java接口的演变(jdk8的default、静态方法,jdk9的私有方法、私有静态方法)

    目录: 接口的定义 jdk7-9,接口属性的变化 jdk8,default.public static method的提出解决了什么问题,使用时需要注意什么 jdk9的补充(引入private met ...

  7. MySQL优化与实践

    一.MySQL优化概括 二.SQL优化 实践: 1.查看是否开启了慢查询日志 show variables like 'slow_query_log' 没有开启 2.查看是否开启了未使用索引SQL记录 ...

  8. Vmware Ubuntu 开机蓝屏

    引用:http://tieba.baidu.com/p/4898482611 1. 这是vm的一个bug!!!打开你的虚拟系统目录,编辑虚拟机文件夹下面的.vmx 用记事本打开,加入代码. cpuid ...

  9. 经验分享:程序员如何快速定位问题(BUG)

    让我掉下眼泪的 不止内存泄漏 让我夜夜不眠的 不止你的需求 明天还要改多久 你攥着我的手 让我感到为难的 是善变的需求 发布总是在半夜 回滚是永远的愁 错误(Bug)随时的暴漏 困扰着我心头 作为程序 ...

  10. JavaScript专题之事件循环

    准备知识 1. 进程(process) 进程是系统资源分配一个独立单位,一个程序至少有一个进程.比方说:一个工厂代表一个 CPU, 一个车间就是一个进程,任一时刻,只能有一个进程在运行,其他进程处于非 ...