1. Python的列表操作可谓是功能强大且方便(相对于Java
    简单、常规的操作就不说了(这不是一个入门教程),介绍几个很有特点的例子
  2.  
  3. 添加
  1. # 追加到结尾(append)
  2. li = [1, 2, 3, 4, 5]
  3. li.append(6)
  4. print('li = %s' % li)
  5. # 输出:li = [1, 2, 3, 4, 5, 6]
  6.  
  7. # 追加一个列表(extend)
  8. li2 = ['a', 'b', 'c', 'd', 'e']
  9. li.extend(li2)
  10. print('li = %s' % li)
  11. # 输出:li = [1, 2, 3, 4, 5, 6, 'a', 'b', 'c', 'd', 'e']
  12.  
  13. # 列表和列表也可以做加法
  14. li_plus = li + li2
  15. print('li_plus = %s' % li_plus)
  16. # 输出:li_plus = [1, 2, 3, 4, 5, 6, 'a', 'b', 'c', 'd', 'e', 'a', 'b', 'c', 'd', 'e']
  1. 删除
  1. # 删除列表中的元素
  2. li = [1, 2, 3, 4, 5]
  3. li.remove(3)
  4. print('li = %s' % li)
  5. # 输出:li = [1, 2, 4, 5]
  6. # 根据索引删除元素
  7. del li[3]
  8. print('li = %s' % li)
  9. # 输出:li = [1, 2, 4]
  1. 截取(又叫切片操作)
    格式: [start:end:step] 。记住这个格式后你就可以发挥想象了
  1. li = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  2. # 每隔两个元素取一个
  3. li2 = li[::2]
  4. print('li2 = %s' % li2)
  5. # 输出:li2 = [0, 2, 4, 6, 8, 10]
  6.  
  7. # 最后一个元素
  8. element = li[-1]
  9. print('element = %s' % element)
  10. # 输出:element = 10
  11.  
  12. # 拷贝(拷贝后是一个新对象)
  13. li2 = list(li)
  14. print('li2 = %s' % li2)
  15. # 输出:li2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  1. 提取并删除(pop
  1. li = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  2.  
  3. # 提取并删除最后一个元素
  4. li.pop() # 等同于 li.pop(-1)
  5. print('li = %s' % li)
  6. # 输出:li = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  7.  
  8. # 提取并删除第一个元素(或第n个元素)
  9. li.pop(0)
  10. print('li = %s' % li)
  11. # 输出:li = [1, 2, 3, 4, 5, 6, 7, 8, 9]
  1. 排序
  1. # 正序排列
  2. li = [3, 1, 5, 8, 0, 9, 2, 6, 7, 4]
  3. li.sort()
  4. print('li = %s' % li)
  5. # 输出:li = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  6.  
  7. # 倒序
  8. li = [3, 1, 5, 8, 0, 9, 2, 6, 7, 4]
  9. li.sort(reverse=True)
  10. print('li = %s' % li)
  11. # 输出:li = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
  12.  
  13. # 翻转(不是倒序排列)
  14. li = [3, 1, 5, 8, 0, 9, 2, 6, 7, 4]
  15. li.reverse()
  16. print('li = %s' % li)
  17. # 输出:li = [4, 7, 6, 2, 9, 0, 8, 5, 1, 3]

  1. 列表解析

    根据已有列表,高效创建新列表的方式
    格式: [expression for iter_val in iterable] 
  1. # 列表中的每一项取平方
  2. li = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  3. li2 = [i**2 for i in li]
  4. print('li2 = %s' % li2)
  5. # 输出:li2 = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
  6.  
  7. # 只有大于5的数才取平方。表达式也可以是if语句
  8. li = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  9. li2 = [i**2 if i > 5 else i for i in li]
  10. print('li2 = %s' % li2)
  11. # 输出:li2 = [0, 1, 2, 3, 4, 5, 36, 49, 64, 81]
  1. 格式: [expr for iter_var in iterable if cond_expr] 
  1. # 只取非None的元素
  2. li = [0, 1, 2, 3, 4, 5, None, 6, 7, 8, 9]
  3. li2 = [i for i in li if i is not None]
  4. print('li2 = %s' % li2)
  5. # 输出:li2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  1. 格式: [expr for iter_var in iterable for var in iter_var] 
  1. # 展开一个二维列表
  2. li = [[0, 1, 2], [3, 4, 5, 6], [7, 8, 9]]
  3. li2 = [j for i in li for j in i]
  4. print('li2 = %s' % li2)
  5. # 输出:li2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  1. 连接列表中的元素(join
  1. li = ['aaa', 'bbb', 'ccc', 'ddd']
  2. li2 = ', '.join(li)
  3. print('li2 = %s' % li2)
  4. # 输出:li2 = aaa, bbb, ccc, ddd
  1.  

Python中的列表操作的更多相关文章

  1. 【Python】Python中的列表操作

    Python的列表操作可谓是功能强大且方便(相对于Java)简单.常规的操作就不说了(这不是一个入门教程),介绍几个很有特点的例子 添加 # 追加到结尾(append) li = [1, 2, 3, ...

  2. python中OS模块操作文件和目录

    在python中执行和操作目录和文件的操作是通过内置的python OS模块封装的函数实现的. 首先导入模块,并查看操作系统的类型: >>> import os os.name # ...

  3. Python中的字符串操作总结(Python3.6.1版本)

    Python中的字符串操作(Python3.6.1版本) (1)切片操作: str1="hello world!" str1[1:3] <=> 'el'(左闭右开:即是 ...

  4. python中的句柄操作

    python中的句柄操作 制作人:全心全意 通过窗口标题获取句柄 import win32gui hld = win32gui.FindWindow(None,u"Adobe Acrobat ...

  5. python中序列的操作

    Python中的序列操作 可变对象:列表.字典.集合 不可变对象:数值.字符串.元组.forzenset 1.序列的通用操作 (1)测试元素是否存在 x in S和x not in S,返回True或 ...

  6. Python编程之列表操作实例详解【创建、使用、更新、删除】

    Python编程之列表操作实例详解[创建.使用.更新.删除] 这篇文章主要介绍了Python编程之列表操作,结合实例形式分析了Python列表的创建.使用.更新.删除等实现方法与相关操作技巧,需要的朋 ...

  7. 一句python,一句R︱python中的字符串操作、中文乱码、NaN情况

    一句python,一句R︱python中的字符串操作.中文乱码.NaN情况 先学了R,最近刚刚上手Python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句pytho ...

  8. (Python基础教程之八)Python中的list操作

    Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...

  9. julia与python中的列表解析.jl

    julia与python中的列表解析.jl #=julia与python中的列表解析.jl 2016年3月16日 07:30:47 codegay julia是一门很年轻的科学计算语言 julia文档 ...

随机推荐

  1. Spark: Job in detail

    1.sc.runJob -> dagScheduler.runJob -> submitJob 2.DAGSchedueler::submitJob 会创建 JobSubmitted 的 ...

  2. Bootstrap--下拉菜单.dropdown

    下拉菜单.dropdown .dropdown <下拉菜单触发器button+下拉菜单ul> .dropdown 包裹层 .dropdown-toggle  下拉菜单触发器 data-to ...

  3. Go 终极指南:编写一个 Go 工具

    https://arslan.io/2017/09/14/the-ultimate-guide-to-writing-a-go-tool/ 作者:Fatih Arslan 译者:oopsguy.com ...

  4. 12.21-Android WebService(基于KSOAP2)

    KSOAP2_连接WebService *****我是小知识点******** Ksoap2提供了对soap序列化更好的支持.Ksoap2是一个轻量级的J2ME平台的实现框架,提供了soap协议消息的 ...

  5. java实现在线文档浏览

    目前发现两种方法: 1.http://dxx23.iteye.com/blog/1947083 FlexPaper+SWFTools ,java实现在线文档浏览 2.webOffice

  6. MongoDB全文检索

    1. 全文检索概念: 全文检索是对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式.  (暂时不支持中文) ...

  7. [Scikit-learn] 4.4 Dimensionality reduction - PCA

    2.5. Decomposing signals in components (matrix factorization problems) 2.5.1. Principal component an ...

  8. Python 抽象篇:面向对象之类的方法与属性

    概览:类成员之字段:-普通字段,保存在对象中,执行职能通过对象访问-静态字段,保存在类中,执行可以通过对象访问,也可以通过类访问类成员之方法:-普通方法,保存在类中,由对象来调用,self->对 ...

  9. Leetcode题解(31)

    103. Binary Tree Zigzag Level Order Traversal 题目 分析: 广度优先遍历的应用.重点是掌握vector的reverse函数,一开始我忘记有这个函数了,琢磨 ...

  10. Python中编码问题:u'\xe6\x97\xa0\xe5\x90\x8d' 类型的转为utf-8的解决办法

    相信小伙伴们遇到过类似这样的问题,python2中各种头疼的转码,类似u'\xe6\x97\xa0\xe5\x90\x8d' 的编码,直接s.decode()是无法解决编码问题.尝试了无数办法,都无法 ...