已采纳回答 / qq_天涯浪子心_03565514
事先声名,f1,f2,f3=count(),count只调用了一次,count()返回值为[f,f,f], f1,f2,f3是count()返回值中的三个元素,f是函数,不是f(),fs()等价于[f,f,f](),语法错误
2016-10-20
已采纳回答 / qq_天涯浪子心_03565514
append 加入的是函数,不是函数调用,也就是说在执行count()的时候,循环中f里的代码段并没有执行,append将方法放入fs,在count执行完后,i经过循环已经变成3,此时执行f(),得到3*3=9
2016-10-20
已采纳回答 / 魅友
因为sorted函数,会对1,-1,0这三个返回的值进行排序。比如一个list里面[10,2,8],sorted函数先把 10和2 比较,结果10>2,则返回 1 ,这样sorted函数接收到了1之后就知道要把2放到10前面做个排序了。同样,对于字符串也是这样,全部转换成了大写之后就可以直接比较unicode码的大小来进行排序了
2016-10-19
已采纳回答 / No_111
C语言没有默认参数 C++才有详情请参考 http://blog.chinaunix.net/uid-20639449-id-1909085.html
2016-10-17
已采纳回答 / Kazusa_
<...code...>可以直接这样写,python3似乎不支持cmp参数了。使用方式可以看https://docs.python.org/3/howto/sorting.html#sortinghowto
2016-10-14
已采纳回答 / nanwenguang
filter( fun() , list ) 中第一个是判断函数,如果你想要过滤掉返回值为false的,改变fun()的内部逻辑就可以了例如: a= [1,2,3,4]print filter(lambda x:x<3,a) 你想不想保留小于3的 那就lambda x:x>=3咯你的意思肯定是想在不改变fun()内部逻辑的前提下 筛掉false的内容,我也是才学python,不是很了解。不过我觉得应该是不可能吧,毕竟filter是一个写好了的函数
2016-10-11
已采纳回答 / nanwenguang
return sorted([s1.upper(),s2.upper()]) ,返回的是一个list但是sorted(list,int)函数后面这个参数需要接受的是一个int型的值所以这么写不对 ,而写成 return cmp(s1.upper(),s2.upper()) 这样返回的就是一个int型的值了
2016-10-10