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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
filter 现在返回的是指向结果为True的元素的地址域。
Return an iterator yielding those items of iterable for which function(item) is true. If function is None, return the items that are true
的萨哈萨沙的撒旦
performance函数形成闭包,返回perf_decorator函数;perf_decorator函数形成闭包,返回wrapper函数;wrapper函数返回r变量,r变量调用了perf_decorator函数的参数f,最终performance函数对factorial函数进行装饰,unit变量 等于 'ms'字符串,对变量t进行判断,返回合适的时间,及factorial函数结果。理解是这么理解,让我写又不太能写出来。。。
import math

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

print (list(filter(is_sqr, range(1, 101))))
def format_name(s):
return s[0].upper() + s[1:].lower()
s = ['adam', 'LISA', 'barT']

print (list(map(format_name, ['adam', 'LISA', 'barT'])))

注意了python 3 里面需要加list,map会报错
说实话 这几节东西讲的不清楚 需要自己找些资料看
Raffi Khatchadourian 对 Andrew Edgecombe 答案的补充:

对于 1),你应当再加上“ 方法在 C++ 中是被称为成员函数”。因此,在 C++ 中的“方法”和“函数”的区别,就是“成员函数”和“函数”的区别。此外,诸如 Java 一类的编程语言只有“方法”。所以这时候就是“静态方法”和“方法”直接的区别。

对于2),你应当补上方法可以操作已在类中声明的私有实例(成员)数据。其他代码都可以访问公共实例数据。

Aaron 的回答:

方法和对象相关;

函数和对象无关。

Java中只有方法,C中只有函数,而C++里取决于是否在类中。
关于 函数和方法 的区别
主要决定于是否与对象有关,能否离开对象使用,能否访问类内所有属性。
(来自 Andrew Edgecombe ):
函数是一段代码,通过名字来进行调用。它能将一些数据(参数)传递进去进行处理,然后返回一些数据(返回值),也可以没有返回值。
所有传递给函数的数据都是显式传递的。

方法也是一段代码,也通过名字来进行调用,但它跟一个对象相关联。方法和函数大致上是相同的,但有两个主要的不同之处:

方法中的数据是隐式传递的;
方法可以操作类内部的数据(请记住,对象是类的实例化–类定义了一个数据类型,而对象是该数据类型的一个实例化)
sorted(L,key=str.lower)
def new_fn(f):
def fn(x):
print 'call'+f.__name__+'()'
return f(x)
return fn

@new_fn
def f1(x):
return x*2
@new_fn
def f2(x):
return x*x
@new_fn
def f3(x):
return x*x*x


print f1(5)
print f2(5)
print f3(5)
def add(x, y, f):
return f(x) + f(y)

def f(s):
a = s**0.5
return a

print(add(25, 9, f))
2.7 2.8这两节好难了啊 看不懂啊
def performance(unit):
def f1(f):
@functools.wraps(f)
def f2(n):
print 'call',f1.__name__ + '() in', f(n),unit
return f(n)
return f2
return f1
def performance(unit):
def f1(f):
def f2(n):
print 'call',f.__name__ + '() in', f(n),unit
return f1(f)
return f2
return f1
装饰器。。。这几节根本看不懂,是给小白界的大佬看的,是不是喝多了写的?
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消