python 学习笔记(6)

# -*- coding: utf-8 -*-
list(map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9]))
# 答案 [1, 4, 9, 16, 25, 36, 49, 64, 81]
#Python对匿名函数的支持有限,只有一些简单的情况下可以使用匿名函数
def log(func):
    def wrapper(*args, **kw):
        print('call %s():' % func.__name__)
# log  函数就是一个装饰器
def now():
     print('2015-3-25')

#我们要借助Python的@语法,把decorator置于函数的定义处
@log
def now():
    print('2015-3-25')
#答案:call now():
#      2015-3-25

# 偏函数:Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function)functools.partial
的作用就是,把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数,调用这个新函数会更简单。#
def int2(x, base=2):
    return int(x, base)

#假设要转换大量的二进制字符串,每次都传入int(x, base=2)非常麻烦,于是,我们想到,可以定义一个int2()的函数,
默认把base=2传进去

import functools
int2 = functools.partial(int, base=2)
int2('1000000')
# 答案:64
int2('1010101')
#答案:85

#当函数的参数个数太多,需要简化时,使用functools.partial可以创建一个新的函数,这个新函数可以固定住原函数的>
部分参数,从而在调用时更简单。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值