• 循环(loop),指的是在满足条件的情况下,重复执行同一段代码。比如,while语句。

                           [ 循环则技能对应集合,列表,数组等,也能对执行代码进行操作。]                      

  • 迭代(iterate),指的是按照某种顺序逐个访问列表中的每一项。比如,for语句。

                            [迭代只能对应集合,列表,数组等。不能对执行代码进行迭代。]                

  • 遍历(traversal),指的是按照一定的规则访问树形结构中的每个节点,而且每个节点都只访问一次。

                            [遍历同迭代一样,也不能对执行代码进行遍历。]

  • 递归(recursion),指的是一个函数不断调用自身的行为。比如,以编程方式输出著名的斐波纳契数列。

                            [线性递归和尾递归。]

列表的数据项不需要具有相同的类型

创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:

list1 = ['Google', 'Runoob', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];
 
显示列表
list1 = ['Google', 'Runoob', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print ("list1[0]: ", list1[0])
print ("list2[1:5]: ", list2[1:5])

以上实例输出结果:

list1[0]:  Google
list2[1:5]: [2, 3, 4, 5] 更新列表

list = ['Google', 'Runoob', 1997, 2000]

print ("第三个元素为 : ", list[2])

list[2] = 2001

print ("更新后的第三个元素为 : ", list[2])

以上实例输出结果:

第三个元素为 :  1997
更新后的第三个元素为 : 2001

插入列表元素

1.列表.append() 方法用于在列表末尾添加新的对象。

a=[2,3,4]

a.append(5)  只能一个参数

删除列表元素

可以使用 del 语句来删除列表的的元素,如下实例:

实例(Python 3.0+)

#!/usr/bin/python3 list = ['Google', 'Runoob', 1997, 2000] print ("原始列表 : ", list) del list[2] print ("删除第三个元素 : ", list)

以上实例输出结果:

原始列表 :  ['Google', 'Runoob', 1997, 2000]
删除第三个元素 : ['Google', 'Runoob', 2000]

2.extend()  扩张列表,参数为列表

b=[0,9]

a.extend(b)   a+b(拼接)

3.insert() 函数用于将指定对象插入列表的指定位置。

语法

insert()方法语法:

list.insert(index, obj)

参数

  • index -- 对象 obj 需要插入的索引位置。
  • obj -- 要插入列表中的对象。

插入index的位置,原来在index的数据向后移

删除列表元素

1.

列表.remobe()  删除列表中元素

2.

del 列表[下标]   删除列表中元素

del 列表      删除全列表

3.

列表.pop()    删除最后一个

name = a.pop()    赋值给name

a.pop(0)    删第一个元素

切片    a[:3]   a[0:3]  1-3 ,后为闭区间

a[0:]   a[:]    前或后不写,默认最前或最后

列表操作符

列表比较大小,默认从第0个元素开始比较

列表 + 数字  这种插入方式不可,+两边需要同类数据类型

3 in a    判断元素是否在列表中

a=[3,[1,2],4]

1 in a  false

1 in a[1]  true

a[1][0]=1

Python count() 方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置

str = "this is string example....wow!!!"

sub = "i"

print "str.count(sub, 4, 40) : ", str.count(sub, 4, 40)

>>>str.count(sub, 4, 40) : 2

a.count(2)    a中2出现的次数

Python index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常

index()方法语法:

str.index(str, beg=0, end=len(string))

  • str -- 指定检索的字符串
  • beg -- 开始索引,默认为0。
  • end -- 结束索引,默认为字符串的长度

a=[1,2,3,4,2]

a.index(2,0,5)  2

reverse() 函数用于反向列表中元素。

aList = [123, 'xyz', 'zara', 'abc', 'xyz']

aList.reverse()

print "List : ", aList

sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。

默认升序

aList = [123, 'Google', 'Runoob', 'Taobao', 'Facebook'];

aList.sort();

print "List : ", aList

>>List : [123, 'Facebook', 'Google', 'Runoob', 'Taobao']

vowels = ['e', 'a', 'u', 'o', 'i']

# 降序

vowels.sort(reverse=True)

# 获取列表的第二个元素
def takeSecond(elem):
  return elem[1]
# 列表
random = [(2, 2), (3, 4), (4, 1), (1, 3)]
# 指定第二个元素排序
random.sort(key=takeSecond)
# 输出类别
print '排序列表:', random

以上实例输出结果如下:

排序列表:[(4, 1), (2, 2), (1, 3), (3, 4)]

a1=a0[:]  另存为 id不同

a2=a0    保存 id相同

元组

a=(1,2,3,4)

a[0] = 1    当寻找元素时用[](序列)

a=(1)    type(a)  int型

a=(1,)    tuple

a=1,2,3    type(a)  tuple(元组)

8 * (8)  64  

8 * (8,)  (8,8,........)

元组插入(拼接)

a=(1,2,3,4)

a=a[:2]+0+a[2:]

>>a=(1,2,0,3,4)

del a    删除元组

字符串

a.casefold()    整个字符串小写

'%c' % 97

>>'a'

'%c%c%c' % (97,98,99)

>>'abc'

'%s' % 'hi'

>>'hi'

'%d+%d=%d' % (4,5,4+5)

>> '4+5=9'

'%#o' % 10

>>'0o12'

'%03d' % 5

>>'005'

'%-03d' % 5

>>'5  '      此刻5后面没有0,因为用0填补时,0放后面使得数字不准确,只能前置

序列 包括:列表,元组,字符串

共同拥有的操作属性:索引,分片,操作符

list()  把可迭代对象(元组)换成列表

a='hi'

list(a)

>>['h','i']

a=(1,2)

list(a)

>>[1,2]

tuple()  换成元组

str()    换成字符串

max()  返回最大值(ascll码的最大值)

min()  返回最小值

a=[1,2,'g']

max(a)    错误写法,同类才可比

a=(1,2,3)

sum(a)    同样同类才可求和

>>6

sum(a,4)  a求和+4

>>10

sorted()  从小到大排序

list(reversed(a))  列表倒序

list(enumerate(a))   把索引值变元组,与a变成列表

a=[1,2,3,4]

b=[3,4]

list(zip(a,b))   a比b的元素多时,把b的所有元素都对应上  

>>[(1,3),(2,4)]

python 05 列表 元组 (序列)的更多相关文章

  1. python字符串列表元组序列操作

    Table of Contents generated with DocToc python系列-字符串.列表.元组的操作 序列的访问及运算符 序列通用操作 访问单个元素 切片访问一部分元素 序列的复 ...

  2. **python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  3. python的列表 元组 字典

    列表和元组都是序列,是数据元素的集合,数据元素可以是数值.字符串,布尔值.对象等. 一.列表:用方括号定义[] 空列表 names = [] 带值的列表 names = ["bill&quo ...

  4. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  5. Python学习-列表元组字典操作

    一.列表 列表是Python的基本数据类型之一,它是以 [] 括起来的,内部成员用逗号隔开.里面可以存放各种数据类型. # 例如: list2 = ['jason', 2, (1, 3), ['war ...

  6. python 中列表 元组 字典 集合的区别

    先看图片解释 (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复 ...

  7. 【python】列表&&元组&&字典

    列表:用“[]”包裹,可对值增删改. 列表遍历: 方法一: alist=["a","b","c","d","e ...

  8. python中列表 元组 字符串如何互相转换

    python中有三个内建函数:列表,元组和字符串,他们之间的互相转换使用三个函数,str(),tuple()和list(),具体示例如下所示: >>> s = "xxxxx ...

  9. Python之列表&元组&字典

    今天学习了Python的基本数据类型,做以下笔记,以备查用. 一.列表 列表的常用方法: 1.append()方法 def append(self, p_object): # real signatu ...

随机推荐

  1. JDK动态代理和 CGLIB 代理

    JDK动态代理和 CGLIB 代理 JDK动态代理:其代理对象必须是某个接口的实现,它是通过在运行期期间创建一个接口的实现类来完成对目标对象的代理. 代码示例 接口 public interface ...

  2. 基于MySql主从分离的代码层实现

    前言   该文是基于上篇<MySQL主从分离的实现>的代码层实现,所以本文配置的主数据库和从数据库的数据源都是在上篇博文中已经介绍了的. 动态选择数据源的配置   由于我们在写数据的时候需 ...

  3. Numpy数组的函数

    import numpy as np # 将 0~100 10等分 x = np.arange(0,100,10) # array([ 0, 10, 20, 30, 40, 50, 60, 70, 8 ...

  4. Python基础教程 (第2+3 版)打包pdf|内附网盘链接提取码

                <Python基础教程 第3版>包括Python程序设计的方方面面:首先,从Python的安装开始,随后介绍了Python的基础知识和基本概念,包括列表.元组.字符 ...

  5. 2020牛客暑期多校训练营 第二场 B Boundary 计算几何 圆 已知三点求圆心

    LINK:Boundary 计算几何确实是弱项 因为好多东西都不太会求 没有到很精通的地步. 做法很多,先说官方题解 其实就是枚举一个点 P 然后可以发现 再枚举一个点 然后再判断有多少个点在圆上显然 ...

  6. 6.6 省选模拟赛 线段 二维数点问题 树套树 CDQ分治

    LINK:线段 还是太菜了 没看出这道题真正的模型 我真是一个典型的没脑子选手. 考虑如何查询答案. 每次在一个线段x的状态被更改后 可以发现有影响的是 和x相连那段极长连续1子段. 设这个子段左端点 ...

  7. linux之FTP服务搭建 ( ftp文件传输协议 VSFTPd虚拟用户)

    FTP服务搭建 配置实验之前关闭防火墙 iptables -F iptables -X iptables -Z systemctl stop firewalld setenforce 0 1.ftp简 ...

  8. ElasticSearch添加索引

    1. 编写索引内容 节点解释: settings:配置信息 "number_of_replicas": 0  不需要备份(单节点的ElasticSearch使用) "ma ...

  9. 【HNOI2011】数学作业 题解(递推+矩阵快速幂)

    题目链接 题目大意:求$1-n$所拼接起来的数$mod\ m$的值. ----------------------------------- 递推式子很好想:$f_i=f_{i-1}*10^{\lg ...

  10. firewalld 极速上手指南

    从CentOS6迁移到7系列,变化有点多,其中防火墙就从iptables变成了默认Firewalld服务.firewalld网上资料很多,但没有说得太明白的.一番摸索后,总结了这篇文章,用于快速上手. ...