• 循环(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. 面试题六十:n个骰子的点数

    把n个骰子扔在地上,求出现和为s的概率 可得n<=s<=6n 方法:定义6n-n+1长度的数组,然后对所有可能出现的组合进行计算,把结果进行计数存进数组:递归 方法二:动态规划,大问题小化 ...

  2. 如何用redis做缓存

    redis缓存 在互联网应用中经常需要用redis来缓存热点数据. redis数据在内存,可以保证数据读取的高效,接近每秒数十万次的吞吐量 减少下层持久层数据库读取压力,像mongodb,每秒近千次读 ...

  3. Java后端总结

    Java后端开发学习路线 编程基础 Java语言 语言基础 基础语法 面向对象 接口 容器 异常 泛型 反射 注解 I/O 图形化(如Swing) JVM 类加载机制 字节码执行机制 jvm内存模型 ...

  4. linux root 与普通用户之间的切换

    test@ubuntu:~$ su Password:  root@ubuntu:/home/uu# 也可以是从root用户切换到普通用户.如果当前是root用户,那么切换成普通用户uu用以下命令:s ...

  5. Python打印到屏幕_读取键盘输入

    Python打印到屏幕_读取键盘输入: print( ): 打印输出括号中的值 print("hello") # hello strs = 'hello' print(" ...

  6. Django学习路13_创建用户登录,判断数据库中账号名密码是否正确

    在 models.py 中设置数据库表的信息 from django.db import models # Create your models here. class User(models.Mod ...

  7. 最基本的Tkinter界面操作

    1.创建应用程序主窗口对象 root = Tk() 2.在主窗口中,添加各种可视化组件 btn1 = Button(root) btn1["text"] = "点我&qu ...

  8. 通过缓存Cache记录命中率

    import org.apache.juli.logging.Log; /** * 通过此Cache记录命中率 * @author Administrator * */ public class Lo ...

  9. java -jar .jar中没有主清单属性

    pom里加上 <build> <plugins> <plugin> <groupId>org.springframework.boot</grou ...

  10. 构建自己的js库

    一.背景 web前端开发人员经常会用到一些现成的js库(框架).框架的使用增加了代码的模块化和可复用性,最主要的是屏蔽了浏览器之间差异性的实现,使得代码更加简洁,框架使用者只需要将注意力放在业务的实现 ...