本次内容主要是总结一下 Python 数据类型中的 list (列表),关于 list 我在 Python 学习第二章已经简单介绍过了,这次呢,我这边主要总结自己学到的跟大家分享一下,有什么不对或者更好的学习方法,欢迎各位程序猿们关注留言,多多指教 ^_^

  1. 首先我们创建一个列表,如下:

 list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
print(list_name)

  打印结果为:

['zhao', 'qian', 'sun', 'li', 'zhou', 'wu', 'zheng', 'wang']

  在 Python 以后的编程中,我们经常用到 list 。list 的都包含了那些操作呢?分别为:查、增、删、改、其他。下面我就以例子来说明。

查

  • 通过索引(下标),都是从0开始
  • 切片
  • .count   主要查某个元素出现的次数
  • '被查内容' in a   其中 a 是列表变量名
#通过索引打印'zheng'
list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
print(list_name[6])

执行结果:

zheng
 #如果想取第三位到第五位的人名呢?
list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
print(list_name[2:5]) #打印结果为:['sun', 'li', 'zhou']
#列表在取值是左包括,右不包括,就像list_name[2:5],其中list_name[5]为:wu,而打印结果就没打印出来。
 #列表中元素很多,又不知道在那个位置,想从第二个人开始取出来最后一位呢?

 list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
print(list_name[1:]) #打印结果为:['qian', 'sun', 'li', 'zhou', 'wu', 'zheng', 'wang'] #想取到倒数第二位呢? list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
print(list_name[1:-1]) #-1代指最后一位元素,最后一位取不出来
#打印结果为:['qian', 'sun', 'li', 'zhou', 'wu', 'zheng'] #跳着取,不再一个一个取
list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
print(list_name[1:6:2]) # 从左往右隔一个取一个,其中2代表步长
#打印结果为:['qian', 'li', 'wu'] #上述这些都是从左往右取,那么反着取呢?
list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
print(list_name[7::-1]) #先确定取第一个的人的位置,再通过 - 来改变方向
#打印结果为:['wang', 'zheng', 'wu', 'zhou', 'li', 'sun', 'qian', 'zhao']

  count()函数

 # count  查某个元素出现的次数

 list_num = [1,6,2,4,9,6,2,1,5,4,9,6,1]
b=list_num.count(1) # count(被查询元素)
print(b)
#打印结果为:3

  index() 根据内容找索引(位置)

# index(元素名) 方法用于从列表中找出某个值第一个匹配项的索引位置

list_num = [1,6,2,4,9,6,2,1,5,4,9,6,1]
print(list_num.index(9))
#输出结果为:4
#问题来了,列表中有2个9,为什么不能找到第二个呢? 这就是要说的#index() 只能找到列表中某个值的第一个匹配位置,怎么找第二个9的位置呢? #利用切片 list_num = [1,6,2,4,9,6,2,1,5,4,9,6,1]
a=list_num.index(9) # 第一个9在大列表的位置
b=list_num[a+1:]
c=b.index(9) #第二个9在小列表的位置
d=a+c+1 #第二个9 在大列表的位置
print('第二个9的位置:',d)
#打印结果为:10

增

  • append   默认插到最后一个位置
  • insert     将数据查到任何一个位置
#将 yang 插入到列表中
list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
list_name.append('yang') #append() 函数默认将'yang'插入到列表最后
print(list_name)
#输出结果为:['zhao', 'qian', 'sun', 'li', 'zhou', 'wu', 'zheng', 'wang', 'yang']

  insert() 函数应用

#将'yang' 插入到 'zhou' 的前面
#insert('被插入对象前的位置','插入的元素内容')
list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
list_name.insert(4,'yang') #先找到'zhou'的位置,然后输入插入对象
print(list_name)
#打印结果为:['zhao', 'qian', 'sun', 'li', 'yang', 'zhou', 'wu', 'zheng', 'wang']

改

#单个修改
#list_name[索引] = '替换内容'
#多个修改
#liest_name[索引:索引] = ['替换内容1','替换内容2']
#将列表中的'wu'替换为'zhu'

list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
list_name[5]='zhu'
print(list_name)
#打印结果为:['zhao', 'qian', 'sun', 'li', 'zhou', 'zhu', 'zheng', 'wang'] #将列表'li'后面的人员用'song','hou'替换掉 list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
list_name[4:]=['song','hou']
print(list_name)
#打印结果为:['zhao', 'qian', 'sun', 'li', 'song', 'hou']

删

  • remove
  • pop
  • del

  remove() 函数,删除固定的内容,不能切片

#删除'wu'后面的所有元素

list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
list_name.remove(list_name[6])
list_name.remove(list_name[6])
print(list_name)
#打印结果为:['zhao', 'qian', 'sun', 'li', 'zhou', 'wu'] #这里为什么不能这样呢?
list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
list_name.remove(list_name[6:]) #不能切片
print(list_name) #报错内容:ValueError: list.remove(x): x not in list
#意思就是说,list_name[6:]代表里面是个小列表['zheng','wang'],而list_name[]列表中没有这个整体的小列表,找不到这个元素。
#如果将列表改为:
list_name=['zhao','qian','sun','li','zhou','wu',['zheng','wang']]
list_name.remove(list_name[6])
print(list_name)
#打印结果为:['zhao', 'qian', 'sun', 'li', 'zhou', 'wu']

  pop() 函数,根据索引删除,删除内容被返回(也就说,根据索引去删除列表元素,被删除的列表元素可以赋到一个变量上,为后续调用使用)

#删除 'wu' ,顺便将wu打印出来

list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
b=list_name.pop(5) #括号里面直接输入删除元素的索引
print(list_name)
print(b)
#打印结果为:['zhao', 'qian', 'sun', 'li', 'zhou', 'zheng', 'wang']
#wu

  del() 函数,可以删除对象

#
list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
del list_name[2]
print(list_name)
#打印结果为:['zhao', 'qian', 'li', 'zhou', 'wu', 'zheng', 'wang'] # del 删除对象
list_name=['zhao','qian','sun','li','zhou','wu','zheng','wang']
del list_name
print(list_name)
#打印结果为:NameError: name 'a' is not defined

其他

  reverse() ,将列表中的元素反向存放

#reverse() 将列表反向存放
list_num = [1,6,4,9,2,5]
list_num.reverse()
print(list_num)
#打印结果为:[5, 2, 9, 4, 6, 1]

  sort() ,在原来的列表中对元素进行排序

# sort() ,在原来的列表中进行排序
list_num = [1,6,4,9,2,5]
list_num.sort()
print(list_num)
#打印结果为:[1, 2, 4, 5, 6, 9]

  列表在这里介绍完了,后面碰到新的问题或者内容再做更新,希望对您有所帮助;如果觉得不错,请点击关注、分享,后续继续分享自己学习 Python的知识。

点击关注,阅读更多内容 ↓↓↓

Python 数据类型之一:列表(list)的更多相关文章

  1. python数据类型:列表List和Set

    python数据类型:列表List, Set集合 序列是Python中最基本的数据结构 序列中每个元素都分配一个数字,表示索引 列表的数据项不需要具有相同的类型        列表中的值可以重复并且有 ...

  2. Python数据类型list(列表)和tuple(元组)

    list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> ...

  3. Python数据类型(列表)

    文章内容参考了教程:http://www.runoob.com/python/python-basic-syntax.html#commentform Python 列表(List) 序列是Pytho ...

  4. Python之路-python数据类型(列表、字典、字符串、元祖)操作

    一.列表: 列表的语法,以中括号开通和结尾,元素以逗号隔开.例如:name = [] 列表是以下标取值,第一个元素下标是0,第二个元素下标是1,最后一个元素下标是-1.   1.增加 #name = ...

  5. Python数据类型之列表

    一.基本数据类型 整数:int 字符串:str(注:\t等于一个tab键) 布尔值: bool 列表:list (元素的集合) 列表用[] 元祖:tuple 元祖用() 字典:dict注:所有的数据类 ...

  6. python 数据类型二 (列表和元组)

    一.列表 1.1 列表的介绍 列表是python的基本数据类型之一,其他编程语言也有类似的数据类型,比如JS中的数组,java中的数组等等,它是以[]括起来,每个元素用逗号隔开,而且可以存放各种数据类 ...

  7. python数据类型之列表(list)和其常用方法

    列表是python常用数据类型之一,是可变的,可由n = []创建,也可由n = list()创建,第一种方法更常用. 常用方法总结: # 创建方法 n = [] 或者 n = list() # in ...

  8. Python笔记_第一篇_面向过程_第一部分_5.Python数据类型之列表类型(list)

    Python中序列是最基本的数据结构.序列中的每个元素都分配一个数字(他的位置或者索引),第一个索引是0,第二个索引是1,依次类推.Python的列表数据类型类似于C语言中的数组,但是不同之处在于列表 ...

  9. Python学习(五) Python数据类型:列表(重要)

    列表: list是一组有序项目的数据结构. 列表是可变类型的数据,列表用[]进行表示,包含了多个以","分隔的项目. list=[] type(list) //<type ' ...

  10. Python基础-python数据类型之列表(四)

    列表 格式 namesList = [ 字符串,数字,列表,元祖,集合] 列表中的元素可以是不 同类型的 列表的相关操作 列表中存放的数据是可以进行修改的,比如"增"." ...

随机推荐

  1. Creating Your Own PHP Helper Functions In Laravel

    By Hamza Ali LAST UPDATED AUG 26, 2018  12,669 104 Laravel provides us with many built-in helper fun ...

  2. zabbix实现企业微信监控报警

    一.zabbix基本说明 简介:zabbix基于Web界面的分布式系统监控的企业级开源软件.可以监控各种系统与设备,网络参数,保证服务器设备安全运营:提供灵活的通知机制.如果检测到的指标不达标,就实现 ...

  3. python学习 day21 (3月28日)----(抽象类 多态 nametuple dump)

    不要因为走的路太久了,而忘记了为了什么而出发. 提前作准备了吗?把思维导图的东西做了吗? 和工作了几年的人,相比,是不是相同的水平,如果要写简历的话. 一边学习,一边复习. 小就是大,少就是多. 1. ...

  4. 2019.01.09 bzoj2599: [IOI2011]Race(点分治)

    传送门 题意:给一棵树,每条边有权.求一条路径,权值和等于K,且边的数量最小. 思路: 考虑点分治如何合并. 我们利用树形dpdpdp求树的直径的方法,边dfsdfsdfs子树边统计答案即可. 代码: ...

  5. IPython:一种交互式计算和开发环境

    IPython基础 可以通过命令行启动IPython,执行任何Python语句,只需将其输入然后回车. Tab键自动完成 在Shell中输入表达式时,只要按下Tab键,当前命名空间中任何与已输入的字符 ...

  6. 百度地图经纬度和地址互转(Java代码)

    这是基于springmvc+mybatis 的一个controller.如果不是这个框架,可以把方法实体抽到自己写的一个类中,然后再测试 package com.uwitec.controller.s ...

  7. RabbitMQ c#版实现(转)

    出处:https://www.cnblogs.com/hanfan/p/9842301.html 网上很多人已经总结的很好了,比如今天看到的这个.https://www.cnblogs.com/Lip ...

  8. c# 文件笔记

    1.文件属性操作 File类与FileInfo都能实现.静态方法与实例化方法的区别! //use File class Console.WriteLine(File.GetAttributes(fil ...

  9. js判断软键盘是否开启弹出

    移动端关于页面布局,如果底部有position:fixed的盒子,又有input,当软键盘弹出收起都会影响页面布局.这时候Android可以监听resize事件,代码如下,而ios没有相关事件. va ...

  10. 利用tcpcopy引流过程

    tcpcopy是一个tcp流量复制工具,当前还支持udp和mysql流量的复制. 目的: 将机器10.24.110.21的5000端口流量引流到机器10.23.25.11的5000端口. 示例:将10 ...