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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
楼下给的一网址很好,分享下http://python.jobbole.com/83625/
答案说的有点晦涩 这里的 p1.get_grade()并不是实例方法 跟例子中的p1.get_grade()不一样 因为实例方法需要传入self作为参数 而这里p1.get_grade()只不过是调用lambda:'A'得到返回值A而已 lambda: "A"相当于 def f(): return "A"
class Person(object):
pass
xiaoming = Person()
xiaohong = Person()

print 'xiao ming '
print 'xiao hong '
print 'xiao ming '== 'xiao hong '
居然看懂了,要是几年前能这样就好了
def format_name(s):
return s.capitalize()
print map(format_name, ['adam', 'LISA', 'barT'])
可见,千万不要在实例上修改类属性,它实际上并没有修改类属性,而是给实例绑定了一个实例属性。

与其这么说 不如说类属性只能类自己修改 实例不能修改类属性
setattr(object, name, value)
The arguments are an object, a string and an arbitrary value. The string may name an existing attribute or a new attribute. For example, setattr(x, 'foobar', 123) is equivalent to x.foobar = 123.
不得不说,最近感觉都是看评论过来的...
def format_name(s):
return s.title()
print map(format_name, ['adam', 'LISA', 'barT'])
其中函数format_name(s)里面的s指向list['adam', 'LISA', 'barT'],是对list进行操作的。
title()函数实现字符串首字母大写,其余小写的功能

已采纳回答 / honhole
所有代码贴出来看看~~~我在本地 print()  前后的括号都要有的。你看看是不是同样的问题?

已采纳回答 / perpetual_sunrise
这条语句不难,难的是逻辑,这个函数的作用是取绝对值,x:-x的意思是取反,应该明白了吧
import math

def is_sqr(x):
return math.sqrt(x) in [1,2,3,4,5,6,7,8,9,10]

print filter(is_sqr, range(1, 101))
解释器内部会将**kw拆分成对应的dict.

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

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

kw.iteritems()历遍字典kw的所有key和value,分别匹配k,v
L2 = sorted(L1,key=lambda x:x.name)
你可以理解为path是包os中的一个模块,想要使用path中的函数时可以只导入os包:import os 也可以导入path模块from os import path 区别在于使用的时候一个需要 os.path.函数名 另一个只需要 path.函数名
python真的好灵活。。。
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消