- Python 3.6從入門到精通(視頻教學(xué)版)
- 王英英
- 360字
- 2019-12-06 14:20:17
6.14 疑難解惑
疑問1:用戶自定義函數(shù)的命名空間是怎么回事?
用戶自定義函數(shù)擁有自己的命名空間。當(dāng)用戶定義一個(gè)函數(shù)后,Python會(huì)為這個(gè)新函數(shù)創(chuàng)建一個(gè)屬于它自己的局部命名空間。
這個(gè)新的局部命名空間內(nèi)包含該函數(shù)所有的參數(shù)與變量。因此,當(dāng)用戶在該函數(shù)內(nèi)用到某一個(gè)參數(shù)或變量時(shí),Python會(huì)先搜索該函數(shù)的局部命名空間。如果在該局部命名空間內(nèi)找不到,Python就會(huì)到全局命名空間內(nèi)進(jìn)行搜索。
所謂全局命名空間,就是指該函數(shù)所在模塊的命名空間。如果在全局命名空間內(nèi)也找不到所要找的參數(shù)或變量時(shí),Python就會(huì)繼續(xù)搜索系統(tǒng)的內(nèi)置命名空間。最后如果還是找不到,Python就會(huì)輸出一個(gè)NameError異常。
疑問2:len()、count()和sum()三個(gè)計(jì)算函數(shù)有什么區(qū)別?
(1)len()函數(shù)返回的是對(duì)象的長度。例如len([1,2,3,4,5,6]),返回值是6。
(2)count()函數(shù)計(jì)算包含對(duì)象的個(gè)數(shù)。例如[1,2,2,2,2,6].count(2),返回值是4。
(3)sum()函數(shù)是做一個(gè)和運(yùn)算。例如sum([1,2,3,4,5]),返回值是15。
推薦閱讀
- Learning Python Web Penetration Testing
- Cocos2d Cross-Platform Game Development Cookbook(Second Edition)
- Java系統(tǒng)分析與架構(gòu)設(shè)計(jì)
- CMDB分步構(gòu)建指南
- Hands-On Machine Learning with scikit:learn and Scientific Python Toolkits
- 深入淺出Java虛擬機(jī):JVM原理與實(shí)戰(zhàn)
- Windows Server 2012 Unified Remote Access Planning and Deployment
- Python完全自學(xué)教程
- Visual FoxPro程序設(shè)計(jì)
- 零基礎(chǔ)學(xué)Python網(wǎng)絡(luò)爬蟲案例實(shí)戰(zhàn)全流程詳解(入門與提高篇)
- Solr Cookbook(Third Edition)
- Web前端應(yīng)用開發(fā)技術(shù)
- Moodle 3 Administration(Third Edition)
- 愛上C語言:C KISS
- Mastering Object:Oriented Python(Second Edition)