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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰

最新回答 / 慕粉7269117
第一个其实也没错,不过题目要求的格式不一样。第二个return f 那def 找个函数就没意义了,相当于这个函数返回又一个函数,而我们是要这个函数返回值的。

已采纳回答 / Bigjing
首先我们要理解d()和d的区别:d()是调用函数,调用函数后才会返回函数运行的结果d是函数本身其次我们看d = c([1, 2, 3, 4]) 做了什么,按照顺序: 调用函数c(),并传入参数[1, 2, 3, 4] 使得 lst = [1, 2, 3, 4]def a(): 声明函数a(),a()实现的功能:def e(x,y): return x * y 声明函数e(),并表示传入参数x,y后,返回x,y相乘的结果reduce(e,lst,1) 计算对lst数列元素相乘的结果,从元素1开始返回函数a本...

最赞回答 / 慕仰8584781
我是先按照楼主那样写的(悄悄咪咪地把print后面f1(),f2(),f3()的括号删掉了),因为发现这样写出来的话f1-f3都是数字了;那么就想着改进:让f1-f3调用一次函数后才得到数字(大概就是课程里讲的延迟吧),于是乎在f函数的定义中又加了一层g()让返回的f1-f3经过一次调用后才出结果#注意返回函数时是return g不是return g()(这样的话就是直接调用了g函数了)def count():    fs = []    for i in range(1, 4):        def ...

最新回答 / qq_天涯_81
u1=S1.upper(),这里S1你写成大写的S了,,,应该跟函数的形参s1对应
python有**,//没有++,-- 手册方面还是菜鸟讲的详细
class Person(object):
def __init__(self, name, score):
self.name = name
self.__score = score

p = Person('Bob', 59)

print p.name
try:
print p.__score
except AttributeError:
print 'attributeError'

已采纳回答 / _ZakYu
调用函数是没错的,可以这样用问题出在 s[:1].upper() + s[1:].lower() 上s 是一个 list,对 list 进行切片,结果返回的是一个 list而upper(), lower() 是字符串的方法<...code...>

最新回答 / 东来往北
filter会判断调用is_sqr函数中返回是是否为真,为真则输出x值到新list中,否则跳过。尝试了一下isinstance方法判断字符串,就失去了filter的意义。能运行通过,但是不会生成新的list

已采纳回答 / 慕勒8431243
python中禁止直接调用双下划线开头的函数,你要在Penson类里面再写一个实例来调用__score

最赞回答 / 雪菜夹馅包
不可以,因为**kw,kw这里是dict类型的,例如class Person(object):    def __init__(self, name, gender, **kw):        self.name = name        self.gender = gender        for k,v in kw.items():            setattr(self,k,v)p = Person('Bob', 'Male', age=18, course='Python')这里kw...
使用*args和**kw是Python的习惯写法,当然也可以用其他参数名,但最好使用习惯用法。
命名的关键字参数是为了限制调用者可以传入的参数名,同时可以提供默认值。
定义命名的关键字参数不要忘了写分隔符*,否则定义的将是位置参数。
默认参数一定要用不可变对象
要注意定义可变参数和关键字参数的语法:
*args是可变参数,args接收的是一个tuple;
**kw是关键字参数,kw接收的是一个dict。
以及调用函数时如何传入可变参数和关键字参数的语法:
可变参数既可以直接传入:func(1, 2, 3),又可以先组装list或tuple,再通过*args传入:func(*(1, 2, 3));
关键字参数既可以直接传入:func(a=1, b=2),又可以先组装dict,再通过**kw传入:func(**{&#039;a&#039;: 1, &#039;b&#039;: 2})。

已采纳回答 / 天奇农人
return s and len(s.strip())>0 中的 s 如果为none的话,你直接 return  len(s.strip())>0 就会报错(因为你调用了s.strip()方法),所以return s and len(s.strip())>0 这样写会提前短路(and运算符 左半部分为false,则右半部分的表达式不执行)
以后再回来好好研究

最新回答 / 慕移动9181930
$filename已经有值了你不用自己在从新定义backgroundColor是明确指出是背景色,background是指背景
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消