| 
 | 
 
 
 楼主 |
发表于 2017-7-28 16:20:31
|
显示全部楼层
 
 
 
016序列!序列!(下)
 本帖最后由 摆渡终极鉴黄师 于 2017-7-28 16:49 编辑  
 
列表、元祖和字符串的共同点 
-都可以通过索引得到每一个元素 
-默认索引值总是从0开始 
-可以通过分片的方法得到一个范围内的元素的集合 
-有很多共同的操作符(重复操作符、拼接操作符、成员关系操作符) 
 
list()把一个可迭代对象转换为列表 
 
list要么是不带参数的,要么是一个迭代器 
 
list(iterable)是一个迭代器,所谓迭代,是重复反馈过程的活动 
例如 
>>> a = list() 
>>> a 
[] 
>>> b = 'I love FishC.com' 
>>> b = list(b) 
>>> b 
['I', ' ', 'l', 'o', 'v', 'e', ' ', 'F', 'i', 's', 'h', 'C', '.', 'c', 'o', 'm'] 
 
tuple([iterable])把一个可迭代对象转换为元祖(跟list一模一样的操作) 
 
str(obj)把obj对象转换为字符串 
 
len()就是返回一个参数的长度,例如 
>>> len(a) 
0 
>>>a 
[]           (因为a是0,所以返回一个空列表) 
>>> len(b) 
16 
>>> b 
['I', ' ', 'l', 'o', 'v', 'e', ' ', 'F', 'i', 's', 'h', 'C', '.', 'c', 'o', 'm']                (因为b是16个字符,Ta变成了16个元素的列表) 
 
max()返回序列或者参数集合中的最大值(反之min返回最小值),例如 
>>> max(1, 2, 3, 4, 5) 
5 
>>> max(b) 
'v'        (v在里面ascll码的值是最大的,所以就返回了一个v) 
>>> numbers = [1, 18, 13, 0, -98, 34, 54, 76, 32] 
>>> max(numbers) 
76 
>>> min(numbers) 
-98 
 
声明一个变量也行,字符串的背后也是一个ascll码,例如 
>>> chars = '1234567890'         
>>> min(chars) 
'0' 
 
传进一个元祖的值也可以进行比较,例如 
>>> tuple1 = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0) 
>>> max(tuple1) 
9 
 
如果既有整形又有字符串,则不能进行比较,例如 
>>> numbers.append('a') 
>>> numbers 
[1, 18, 13, 0, -98, 34, 54, 76, 32, 'a'] 
>>> max(numbers) 
Traceback (most recent call last): 
  File "<pyshell#24>", line 1, in <module> 
    max(numbers) 
TypeError: '>' not supported between instances of 'str' and 'int'(通过索引每一个元素把每一个元素进行对比) 
max- tuple[0] 
—————————————————————————————————————————————————— 
for each in tuple1: 
        if each > max: 
                max = each 
 
return max |   
 
 
 
 |