本篇文章為大家展示了sum求和函數(shù)怎么在Python中使用,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
為蕭山等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及蕭山網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、蕭山網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!from math import sqrt def sim_distance(prefs, person1, person2): # 得到shared_items的列表 si = {} for item in prefs[person1]: if item in prefs[person2]: si[item] = 1 # 如果兩者沒有共同之處,則返回0 if len(si) == 0: return 0 # 計算所有差值的平方和 sum_of_squares = sum([pow(prefs[person1][item] - prefs[person2][item], 2) for item in prefs[person1] if item in prefs[person2]]) return 1/(1 + sqrt(sum_of_squares))
自己不明白的代碼塊就是在計算所有差值的平方和這里,按照一般語言邏輯,應(yīng)該是for語句和pow語句位置對調(diào)一下啊,很是困惑!后來查閱了一下sum函數(shù)的用法才豁然開朗,再次感嘆Python之神(bian)奇(tai)語法。
sum函數(shù)的參數(shù)是這樣的:sum(iterable[, start]),其中iterable為可迭代對象,可以是list、tuple或者dictionary等。
sum函數(shù)最后的值 = 可迭代對象里面的數(shù)相加的值 + start的值,其中start可以不寫,默認為0。講到這里,那么我們怎么去理解上面計算所有差值的平方和這段代碼呢?其實很簡單,看看下面這段代碼,然后再回去看上面那段代碼就會柳暗花明了!
from math import sqrt a = range(1, 11) b = range(1, 10) c = sum([item for item in a if item in b]) print c
可以自己輸入這段簡單的代碼運行試試,最終的結(jié)果是:45
上述內(nèi)容就是sum求和函數(shù)怎么在Python中使用,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
當前標題:sum求和函數(shù)怎么在Python中使用-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://aaarwkj.com/article10/cojogo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、品牌網(wǎng)站制作、軟件開發(fā)、用戶體驗、微信公眾號、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容