列表操作

列表时用方括号括起来的一组元素值,是可变变量,可通过下表取值,也可以通过下表来修改值,列表中的元素是有序的,可以是不同的基本数据类型,如:

names=[1, 2, 3, “abc”, “def”]

列表取值时,下标也是从0开始,最大下标是元素个数减1,即len(names)-1

列表操作的常用方法:

增:

names.append('zhaocunlei')            #从末尾追加元素

names.insert(0,'yinwenqiao')          #指定位置添加元素

删:

names.pop()  #删除列表末尾元素,删谁也把它的值返回了,可用变量接收、用print查看

names.pop(2) #删除指定位置的元素,传参为列表元素下标

names.remove('yinwenqiao')  #删除指定值,传参是列表的一个元素值,不能空参

#该方法不返回被删除的元素值,用print查看返回为None

# print('remove 方法的返回值',names.remove('yinwenqiao'))

# del names[0]  #使用del关键字删除指定元素

# names.clear()  #清空列表

查:

print(names.count('hsdfsdf'))           #查找值在list里面的次数

print(names.index('yinwenqiao'))

#返回查找元素的下标,如果有多个话返回第一个的,如果没有的话就会报错

print(names.index('yinwenqiao',3,4))  #后面可以加上查找开始位置和结束位置

print('zhangyizhou' in names) #用in来判断一个元素是否在list里面,返回布尔值

print(names[-3])                #下标是-1的话,代表最后一个元素

改:

stus = ['yangwb','yangwn','yanghj']

print('加起来的',stus+names)         #两个列表合并,并返回新列表可用变量接收,原列表不变

stus.extend(names)                  #把另一个列表里面的每个值挨个添加到前面的列表中,不返回值

print(stus.extend(names)) # 结果是None

print(stus) # 被增加后的样子

nums = [23,34,21,2,456,35,12324324]

nums.sort()               #排序,默认是升序,不返回值

print('sort:',nums)

nums.sort(reverse=True)                  #排序,指定reverse=True就是降序,不返回值

print('sort降序:',nums)

print(nums.reverse())   #倒序

print(nums)

以上都是单列表的一些基本操作,列表还有多维的,多维列表元素查找时不要慌,引用一样是用下标,注意维度要从外到内。

lis = [1,'lily',19.8,['lily','lilei',['heheh','haha']]]

print(lis[3][2][1])                # 结果为haha

切片操作:

切片的意思就是从list里面或者字符串里面取某个或某几个元素,切片操作对字符串也是完全适用的。

name1 = 'zcl,pyzyz'
names = ['zcl','py','zyz']

print(names[0:2])    #从第几个取到第几个,这个也是顾头不顾尾,此例取的是第0个和第一个这俩元素
print(names[:2])    #如果是从第一个开始取,取到某一个下标结束,那么最前面是可以不写的    
print(names[1:])    #如果是从前面某个开始取,取到最后面结束,那么最后面是可以不写的
print(names[:])      #如果最前面和最后面都不写的话,取整个列表

nums = list(range(1,11))
print(nums[1:10:2])  #如果最后面写上步长的话,就是每隔几个取一次,此例结果是 [2, 4, 6, 8, 10]
print(nums[::2])    #此例结果是 [1, 3, 5, 7, 9]
print(nums[::-2])     #当切片的步长为负数时,是从末尾开始取值的,然后隔几个取一次 [10, 8, 6, 4, 2]
print(nums[::-1])     #如果步长为-1的时候,还有反转的功能 [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

Python学习杂记_5_列表常用操作的更多相关文章

  1. Python学习杂记_6_字典常用操作

    字典操作 字典是由一对花括号括起来的一组“键值对”,每个键值对就是字典的一个元素,元素在字典中是无序的,常见操作如下: info = { 'name':'xiaoming', 'sex':'nan', ...

  2. python学习二,字符串常用操作

    字符串可以说是在日常开发中应用最广泛的了,现在来总结下有关python中有关字符串一些常用操作 首先我们声明一个字符串变量 str = "hello world" 下面我们来依次介 ...

  3. python基础之列表常用操作及知识点小结

    列表(list) List(列表) 是 Python 中使用最频繁的数据类型.列表可以完成大多数集合类的数据结构实现.它支持字符,数字,字符串甚至可以包含列表(所谓嵌套).列表用[ ]标识,是pyth ...

  4. Python自动化开发(三):循环次数控制、常用数据类型、字符串格式化、列表常用操作、列表的后续操作

    计数器的作用可以在死循环中,符合条件的情况下做自动退出中断 #!/usr/bin/env python # _*_ coding: utf-8 _*_ # @Time : 2017/3/14 11:2 ...

  5. python字符串,列表常用操作

    24天养成一个好习惯,第五天! 一.字符串需要掌握的操作 1.取值(索引取值)需要注意的是只能取,不能改 msg = 'hello world' print(msg[4]) 2.切片(顾头不顾尾) m ...

  6. Python学习之路13☞常用模块

    一 time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行“type(t ...

  7. python学习笔记整理——列表

    Python 文档学习笔记 数据结构--列表 列表的方法 添加 list.append(x) 添加元素 添加一个元素到列表的末尾:相当于a[len(a):] = [x] list.extend(L) ...

  8. Python脚本控制的WebDriver 常用操作 <一> 启动浏览器

    由于本人的学习定位是基于Selenium+WebDriver+Python+FireFox+Eclipse+Pydev, 所以我的笔记也只和这方面相关. 我打算先学习基于Python脚本WebDriv ...

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

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

随机推荐

  1. GTF/GFF

  2. 用描述符实现classmethod方法和staticmethod方法

    1. @classmethod class ClassMethod: def __init__(self, func): self.func = func def __get__(self, inst ...

  3. Android 显示和隐藏软键盘的方法

       前言:因为项目要求做一个类似贴吧一样的东西,可以评论,所以必不可少地需要用到软键盘的隐藏和显示. Step 1 废话不多说,先上封装好的代码. public class CommonUtils ...

  4. Failed to find provider info for com.tencent.mm.sdk.plugin.provider

    微信启动的时候可以调用,微信没启动,调用支付报这个错误. 我的问题是 微信发开着的jar包不是最新的,去官方网站下一个最新的就可以成功了.

  5. Python基础-week06 面向对象编程基础

    一.面向对象编程 1.面向过程 与 面向对象编程 面向过程的程序设计: 核心是 过程二字,过程指的是解决问题的步骤,即先干什么再干什么......面向过程的设计就好比精心设计好一条流水线,是一种机械式 ...

  6. 如何解决Jmeter导出的聚合报告是乱码易位问题

    在使用Jmeter这个工具的时候,有些单词不懂是什么意思,就切换到这个工具自带的中文语言: 当我们测试完毕,导出聚合报告(Summary Report)的时候: 1.有一些第一个Title下面的中文是 ...

  7. RESTful-rest_framework视图层-第三篇

    图书管理系统: 实现图书接口的增.删.改.查 方式一:普通的方式 views配置: #Book的增.删.改.查接口 class BookSerializer(serializers.ModelSeri ...

  8. 爬虫:Scrapy2 - 命令行工具

    Scrapy 是通过 scrapy 命令行工具进行控制的. 这里我们称之为 “Scrapy tool” 以用来和子命令进行区分.对于子命令,我们称为 “command” 或者 “Scrapy comm ...

  9. [问题解决]NotImplementedError 错误原因:子类没有实现父类要求一定要实现的接口

    NotImplementedError: 子类没有实现父类要求一定要实现的接口. 在面向对象编程中,父类中可以预留一个接口不实现,要求在子类中实现.如果一定要子类中实现该方法,可以使用raise No ...

  10. NetScaler通过DHCP服务器获取IP地址

    NetScaler通过DHCP服务器获取IP地址 DHCP 选项参考 https://www.iana.org/assignments/bootp-dhcp-parameters/bootp-dhcp ...