为了账号安全,请及时绑定邮箱和手机立即绑定

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
def performance(unit):
def performance_decorator(f):
def fn(x):
print 'call'+f._name_+'()in',time().unit
return f(x)
return fn
return performance_decorator
def performance(f):
def fn(x):
print 'call ' +f._name_+'()in',time()
return f(x)
return fn

最新回答 / alienpro
这典型的语文老师死得早。。。。原函数的参数名称如果不是 x,比如说是a,那么用了那个装饰器之后,参数名称就变成x了,所以老师说有可能改变原函数的参数名称。
这个看的还不是很懂:-(

已采纳回答 / adamwwt
确保是同样的代码可以试着文件路径换成全英文的 代码——》MyCode直接在解释器中new file 然后F5 run。亲测能打印出结果
解释器内部会将**kw拆分成对应的dict.

setattr()方法接受3个参数:setattr(对象,属性,属性的值)

setattr(self,k,v)相当于self.k = v

kw.iteritems()历遍字典kw的所有key和value,分别匹配k,v
def format_name(s):
return s.upper[:1]+s.lower[1:]

print map(, [format_name,['adam', 'LISA', 'barT'])
class Person(object):
def __init__(self,name,gender,birth,job):
self.name=name
self.gender=gender
self.birth=birth
self.job=job

xiaoming = Person('Xiao Ming', 'Male', '1990-1-1', job='Student')

print xiaoming.name
print xiaoming.job
class Person(object):
pass

p1 = Person()
p1.name = 'Bart'

p2 = Person()
p2.name = 'Adam'

p3 = Person()
p3.name = 'Lisa'

L1 = [p1, p2, p3]
L2 = sorted(L1,lambda p1,p2:cmp(p1.name,p2.name))

print L2[0].name
print L2[1].name
print L2[2].name
class Person(object):
pass

xiaoming = Person()
xiaohong = Person()

print xiaoming
print xiaohong
print xiaoming==xiaohong
try:
import json
except ImportError:
import simplejson as json

print json.dumps({'python':2.7})
import math

def is_sqr(x):
if math.sqrt(x)%1==0:
return x

print filter(is_sqr, range(1, 101))
def format_name(s):
return s[0].upper()+s[1:].lower()

print map(format_name, ['adam', 'LISA', 'barT'])
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消