1,datetime使用方法

#时间函数datetime

from datetime import datetime

datetime.now()       

#打印当前时间,输出datetime.datetime(2022, 7, 25, 23, 56, 20, 341749)

print(datetime.now())       

#打印当前时间,输出2022-07-25 23:56:33.673915

2,isinstance函数

接受两个参数,作用是判断数据的数据类型。

3,filter函数

filter(a,b)

#a为函数,b为将要处理的数据列表

#对b中每个元素,在a中进行判断,如果结果为真则保留,结果为假则舍弃

4,map函数

map(a,b)

#a是函数,用来处理b参数

#b是可迭代对象,例如字典、列表等

#例:

b = [1,4,7,'dc',3.4]    #b作为待处理列表(或其他可迭代对象)

def a(i):

        if isinstance(i,int):    #如果i是整型,则返回真(True)

                return True

        else:    #i不是整型,则返回假(False)

                return False

5,reduce函数

reduce(a,b)

#a是函数,用来处理b中的元素

#b是可迭代对象

map和reduce的区别:

1>,reduce中a函数对b列表进行积累处理;

2>,reduce需导入(from functools import reduce).

 6,lambda匿名函数

a = lambda x: x**2

a(5)

#返回5的平方

7,partial函数

partial 函数接受两个参数,第一个参数为原函数名,第二个参数为原函数中的默认参数,partial 函数的返回值就是一个我们需要的新函数。

from functools import partial
def a(x,y):
    return x**y    #返回x的y次方

demo = partial(a,y=4)    
#通过partial将y的默认值定义为4,此时的demo就是需要的新函数

print(demo(2))    #返回2的4次方

print(demo(2,y=3))    #这里如果要自己定义y的值,就需要写成"y=..."

 ——————————————————————————————————————————————

可迭代对象

Python 中,可迭代(Iterable)对象就是能用 for 循环迭代它的元素。

迭代器

能用 next 函数不断的去获取它的下一个值,直到迭代器返回 StopIteration异常。所有的可迭代对象都可以通过 iter 函数去获取它的迭代器。

迭代器实现的是__iter__和__next__这两个特殊方法。

上图例子相当于:

class Test:
    def __init__(self, a, b):
        self.a = a
        self.b = b
    def __iter__(self):
        return self
    def __next__(self):
        self.a += 1
        if self.a > self.b:
            raise StopIteration()
        return self.a

test = Test(0, 5)   # Test 类的实例就是迭代器
print(next(test))    #输出1
print(next(test))    #输出2
#代码借阅

 可迭代对象和迭代器的区别:能被 for 循环访问的都是可迭代对象,能被 next 函数获取下一个值的是迭代器。

来源:遣隽命运

物联沃分享整理
物联沃-IOTWORD物联网 » Python中高阶函数

发表评论