已采纳回答 / 廖雪峰
__future__是基于:你现在的代码在低版本上跑着,不是说升就能升到高版本的,因为没有测试但是高版本有个特性你很想用,于是可以在低版本用__future__测试,测得好,将来升级到高版本风险低发新版本时都有release note,让你知道新功能。一个新功能比如打算发布到2.9版本,那在2.8版本中就会存在,只是以__future__方式存在,目的就是让旧代码有机会充分测试
2015-03-08
已采纳回答 / 廖雪峰
str()是转换字符串%f是按指定格式转换字符串两者使用场景不同比如你要显示货币,小数必须是两位:>>> print '%0.2f' % 3.14159263.14
2015-03-07
已采纳回答 / 廖雪峰
import math表示math这个模块可以用变量math引用了,但是math模块里的sqrt函数必须用math.sqrt如果用from math import sqrt,则sqrt函数可以用变量sqrt引用了,但math模块本身却不能用math变量引用
2015-03-07
已采纳回答 / 廖雪峰
注意你的for循环第一次就退出了,而且永远返回 x == 1*1def is_sqr(x): for y in range(1,11): if x==y*y: return True return False
2015-03-06
最新回答 / 慕客2057
我认为,可以参考:>>> import functools>>> int2 = functools.partial(int, base=2) # base是一个函数,其参数取2,即把输入的内容转化成2进制>>> int2('1000000')64这里也一样,cmp是一个函数,其函数里面又包含了一个参数函数,为隐函数lambda,后面部分为参数函数lambda的内容
2015-03-06
讲师回答 / 廖雪峰
因为函数调用允许传入关键字参数:>>> def fn(*args):... pass... >>> fn(1, 2, 3) # OK>>> fn(1, 2, 3, last=4)Traceback (most recent call last): File "<stdin>", line 1, in <module>TypeError: fn() got an unexpected keyword argument '...
2015-03-06
已采纳回答 / rose0803
%是格式化的意思,%s是格式化字符串,%f是格式化浮点数,这句话的意思是把f.__name__插入到了%s这个位置,(t2-t1)计算后的值插入到了%f这个位置
2015-03-06
最赞回答 / joe2015
对list排序的函数sorted(l,cmp) 需要接受一个cmp参数,根据cmp(x,y)的返回值来确定排列顺序,如果返回1,则x在y的后面,返回0,无所谓,返回-1则x排在y的前面。
2015-03-04