-
循环(loop),指的是在满足条件的情况下,重复执行同一段代码。比如,while语句。
[ 循环则技能对应集合,列表,数组等,也能对执行代码进行操作。]
-
迭代(iterate),指的是按照某种顺序逐个访问列表中的每一项。比如,for语句。
[迭代只能对应集合,列表,数组等。不能对执行代码进行迭代。]
-
遍历(traversal),指的是按照一定的规则访问树形结构中的每个节点,而且每个节点都只访问一次。
[遍历同迭代一样,也不能对执行代码进行遍历。]
-
递归(recursion),指的是一个函数不断调用自身的行为。比如,以编程方式输出著名的斐波纳契数列。
[线性递归和尾递归。]
列表的数据项不需要具有相同的类型
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:
以上实例输出结果:
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+)
以上实例输出结果:
原始列表 : ['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)
以上实例输出结果如下:
排序列表:[(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)]