016 Python初学笔记--序列常用内置函数

1.列表、元组、字符串的共同点:

   (1)都可以通过索引得到每一个元素
   (2)默认索引值都是从0开始
   (3)可以通过分片的方式得到一个范围内的元素的集合
   (4)有很多共同的操作符(*:重复操作符;+:拼接操作符;in,not in:成员操作符)
   列表、元组、字符串统称为序列。

2.序列常见BIF

list([iterable])把一个可迭代对象转换为列表,返回类型为列表类型
tuple([iterable])把一个可迭代对象转换为元组,返回类型为元组类型
str(obj)把obj对象转换为字符串,返回类型为字符串类型
len(sub)求序列的长度,返回一个数字
max(iterable)返回集合序列中的最大值(集合中的元素类型必须相同)
min(iterable)返回集合序列中的最小值(集合中的元素类型必须相同)
sum(iterable[,start=0])返回序列iterable和可选参数start的总和
sorted(iterable)返回一个排序的列表,相当于list.sort()
reversed(iterable)逆置,返回一个迭代器对象
enumerate(iterable)枚举,返回一个迭代器对象
zip(iterable1,iterable2)压缩,返回一个迭代器对象
>>> #  list([iterable])
>>> a=list()
>>> a
[]
>>> a='hello'
>>> list(a)
['h', 'e', 'l', 'l', 'o']
>>> b=(1,2,3)
>>> list(b)
[1, 2, 3]

>>> #  tuple([iterabe])
>>> a=[1,2,3,4,5]
>>> tuple(a)
(1, 2, 3, 4, 5)

>>> #str(obj)
>>> str()
''
>>> str(5)
'5'

>>> #  len(sub)
>>> a='123'
>>> len(a)
3
>>> c=[2,1,'2']
>>> len(c)
3

>>> #  max(iterable)
>>> a='12345'
>>> max(a)
'5'
>>> b=['1','2','b','a']
>>> max(b)
'b'
 
>>> #  min(iterable)
>>> c=('a','g','y')
>>> min(c)
'a'

>>> # sum(iterable[,start])
>>> a=1,2,3,4,5
>>> sum(a)
15
>>> sum(a,5)
20

>>> #  sorted(iterable)
>>> a=(2,5,1,0,6,9,7)
>>> sorted(a)
[0, 1, 2, 5, 6, 7, 9]
 
>>> #  reversed(iterable) 
>>> b='abcdefg'
>>> reversed(b)
<reversed object at 0x000002A614ACD7B8>
>>> list(reversed(b))
['g', 'f', 'e', 'd', 'c', 'b', 'a']

>>> #  enumerate(iterable)
>>> a=('a','b','c','d')
>>> list(enumerate(a))
[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')]

>>> # zip()
>>> a='abcdefg'
>>> b='678'
>>> zip(a,b)
<zip object at 0x000002A614B11308>
>>> list(zip(a,b))
[('a', '6'), ('b', '7'), ('c', '8')] 

注:迭代:所谓迭代,是重复反馈过程的活动,其目的通常是为了接近并到达所需的目标或结果。每一次对过程的重复被成为一次“迭代”,而每一次迭代得到的结果会被用来作为下一次迭代的初始值。

练习:sum()这个BIF有个缺陷,就是如果参数里有字符串类型的话就会报错,请重新写出一个新的实现过程,自动忽略参数里的非数字。

def sum(x):
    result=0
    for i in x:
        if(type(i)==int) or (type(i)==float):
            result+=i
        else:
            continue
    return result

print(sum([1,2,3,1.1,'a',True,2]))

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值