亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

python進階

廖雪峰 移動開發工程師
難度中級
時長 3小時33分
學習人數
綜合評分9.20
575人評價 查看評價
9.6 內容實用
9.0 簡潔易懂
9.0 邏輯清晰
student類中的屬性score可以直接調用,賦值,但無法判讀賦予的數值的合理性,也無法實現只讀屬性。

于是引入set方法和get方法。
get方法負責獲取score屬性的值,set方法負責判斷數值的合理性并給score屬性賦值。但是每次都要調用方法不如直接寫屬性來得方便。

于是引入內置裝飾器@property
property是一個類,property=屬性(get,set,del)。里面帶@property , @x.get , @x.del 三個裝飾器。
裝飾器@property可以將方法變為屬性。
def performance(f):
def new_fn(n):
start = time.time()
a=f(n)
end = time.time()-start
return 'call '+f.__name__+'() in %s' %end,a
return new_fn
def calc_prod(lst):
def prod():
sum=1
for x in lst:
sum *= x
return sum
return prod

f = calc_prod([1, 2, 3, 4])
print f()
def calc_prod(lst):
def prod():
return reduce(lambda x,y:x*y,lst)
return prod

f = calc_prod([1, 2, 3, 4])
print f()
import math

def is_sqr(x):
num = str(math.sqrt(x)).split('.')
return num[len(num)-1] == '0'

print filter(is_sqr, range(1, 101))
def format_name(s):
return s.capitalize()

print map(format_name, ['adam', 'LISA', 'barT'])
def format_name(s):
# return s[0].upper()+s[1:].lower()
return s.title()
print map(format_name, ['adam', 'LISA', 'barT'])
import math

def is_sqr(x):
c=(x/(round(math.sqrt(x)))==math.sqrt(x))
return x and c

print filter(is_sqr, range(1,100))
def count():
fs = []
for i in range(1, 4):
def f(x=i):
return x*x
fs.append(f)
return fs

f1, f2, f3 = count()
print f1(), f2(), f3()
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
types.MethodType(fn_get_grade, p1, Person)
try:
from cStringIO import StringIO
except ImportError:
from StringIO import StringIO
課程須知
本課程是Python入門的后續課程 1、掌握Python編程的基礎知識 2、掌握Python函數的編寫 3、對面向對象編程有所了解更佳
老師告訴你能學到什么?
1、什么是函數式編程 2、Python的函數式編程特點 3、Python的模塊 4、Python面向對象編程 5、Python強大的定制類

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消