鱼C论坛

 找回密码
 立即注册
查看: 2047|回复: 0

[技术交流] 《零基础入门学习python》第十六讲笔记:序列!序列!

[复制链接]
发表于 2017-7-31 10:40:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
列表 、元组和字符串的共同点
--都可以通过索引得到每一个元素
--默认索引值总是从0开始
--可以通过分片的方法得到一个范围内的元素的集合
--有很多共同的操作符(重复操作符*、拼接操作符+、成员关系操作符 in & not in)


重复反馈过程的活动称为迭代,其目的通常是为了接近并达到所需的目标或结果
每次对过程重复称一次迭代, 每一次迭代得到的结果用来做下一次迭代的初始值,迭代就是一个for循环

序列的内置方法:
list() 把一个可迭代对象转换为列表,help(list)
tuple() 把一个可迭代对象转换为元组,help(tuple),跟list方法一摸一样
str()把obj对象转换为字符串,help(str)
len() f返回参数长度
max() 返回序列或者参数集合中的最大值
min()返回序列或者参数集合中的最小值
sum(iterable[,start=0]) 返回序列iterable和可选参数start的总和
sorted() 把一个序列排序,跟list.sort()作用一样
reversed()原地逆转
enumerate() 打印索引值和其对应的值
zip(a,b) 把两个列表索引值对应的item组合成一个元组

使用max()和min()需保证序列或参数的数据类型是统一的。
>>> a = list()  # 不带参数,创建一个空列表 作用跟 a = [  ]  一样
>>> a
[]
>>> b = 'I love FishC.com'
>>> b = list(b)  # 带参数,首先创建一个空列表,然后将b通过索引得到的值依次添加到新列表中
>>> b
['I', ' ', 'l', 'o', 'v', 'e', ' ', 'F', 'i', 's', 'h', 'C', '.', 'c', 'o', 'm']
>>> c = (1,1,2,3,5,8,13,21,34)    
>>> c = list(c)   # 带参数,同理,将元组按索引依次添加到新列表中
>>> c
[1, 1, 2, 3, 5, 8, 13, 21, 34]
>>> len(a) # 因a列表是空的,所以打印0
0
>>> len(b)  # 打印b列表的长度
16
>>> b
['I', ' ', 'l', 'o', 'v', 'e', ' ', 'F', 'i', 's', 'h', 'C', '.', 'c', 'o', 'm']
>>> max(1,2,3,4,5)  # 得到最大值
5  
>>> max(b)
'v'
>>> numbers = [1,18,13,0,-98,34,54,76,32]   
>>> max(numbers)   # 能识别负数
76
>>> min(numbers)   # 得到最小值
-98
>>> chars = '1234567890'
>>> min(chars)  # 字符串也可以比大小,按照ASCII
'0'
>>> tuple1 = (1,2,3,4,5,6,7,8,9,0)
>>> max(tuple1)  # 得到元组的最大值
9
>>> tuple2 = (3.1,2.3,3.4)
>>> sum(tuple2)   # 元组求和
8.8
>>> numbers
[1, 18, 13, 0, -98, 34, 54, 76, 32]
>>> sum(numbers)  
130
>>> sum(numbers,8)  # 两个参数,最终得到numbers +8 
138
>>> chars
'1234567890'
>>> sum(chars)   # 字符串不可以求和
Traceback (most recent call last):
  File "<pyshell#138>", line 1, in <module>
    sum(chars)
TypeError: unsupported operand type(s) for +: 'int' and 'str'
>>> sorted(numbers)   # 从小到大排序
[-98, 0, 1, 13, 18, 32, 34, 54, 76]
>>> reversed(numbers)
<list_reverseiterator object at 0x0000000003229198>
>>> list(reversed(numbers))   # 逆向排序,比列表形式输出
[32, 76, 54, 34, -98, 0, 13, 18, 1]
>>> enumerate(numbers)
<enumerate object at 0x0000000003226E10>
>>> list(enumerate(numbers))   # 将索引号和对应item值组成一个元组,最终以list输出
[(0, 1), (1, 18), (2, 13), (3, 0), (4, -98), (5, 34), (6, 54), (7, 76), (8, 32)]
>>> a = [1,2,3,4,5,6,7,8]
>>> b = [4,5,6,7,8]
>>> zip(a,b)
<zip object at 0x000000000323E3C8>
>>> list(zip(a,b))   # 将a 和  b 相同索引值对应的item组成一个元组,不能配对的舍弃掉,最终以list输出
[(1, 4), (2, 5), (3, 6), (4, 7), (5, 8)]
>>>

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 13:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表