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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
def c(x.c):
a=x.upper()
s=c.upper()
if a<s:
return -1
if a>s:
return 1
return 0

print sorted(['bob', 'about', 'Zoo', 'Credit'],c)
有c++和java基础的这里还是比较好理解的
@score.setter是个副产品,谁能解释下
这个最大公约数,吊的一批
import time

def performance(f):
def fn(*args, **kw):
print "call factorial() in",time.localtime(time.time())
return f(*args, **kw)
return fn
我来说得清楚一些吧
def count():
fs = []
for i in range(1, 4):
def f():
return i*i
fs.append(f)
return fs
问题根源是当i循环的时候添加的f只是一个函数不带任何值
当i=1时,count函数内部第一次定义了函数f,然后把函数f添加到fs这个list里面
需要注意的是,此时添加的是一个函数而没有做任何计算。于是在循环三遍后,相当于往fs里添加了三个函数f但是并没有任何计算发送,而i的值已经等于3了,所以当重新引用函数时就会把3带进去
怎样才能成功啊?
@property
def grade(self):
return 'A' if self.__score>=80 else 'B' if self.__score>=60 else 'C'
return -cmp(self.score,s.score) if self.score!=s.score else cmp(self.name,s.name)
学python,玩爬虫,看xjj
为什么不要用super()这个函数啊,能分析下吗?
如果希望 x 排在 y 的前面,则返回 -1,如果希望 x 排在 y 的后面,返回 1。如果希望 x 和 y 相等,返回 0。这样说应该容易理解些!小白建议
def __cmp__(self, s):
if self.score < s.score:
return 1 #从大→小
elif self.score >= s.score:
return -1
else:
return 0
class Person(object):

def __init__(self, name, gender, **kw):
self.name = name
self.gender = gender
for k,v in kw.iteritems():
setattr(self,k,v)

p = Person('Bob', 'Male', age=18, course='Python')
print p.age
print p.course
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消