內置函數(shù)就是Python給你提供的,拿來直接用的函數(shù),比如print.,input等。
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:域名注冊、網(wǎng)站空間、營銷軟件、網(wǎng)站建設、連山網(wǎng)站維護、網(wǎng)站推廣。
截止到python版本3.6.2 ,python一共提供了68個內置函數(shù),具體如下
本文將這68個內置函數(shù)綜合整理為12大類,正在學習Python基礎的讀者一定不要錯過,建議收藏學習!
(1)列表和元組
(2)相關內置函數(shù)
(3)字符串
frozenset 創(chuàng)建一個凍結的集合,凍結的集合不能進行添加和刪除操作。
語法:sorted(Iterable, key=函數(shù)(排序規(guī)則), reverse=False)
語法:fiter(function. Iterable)
function: 用來篩選的函數(shù). 在?lter中會自動的把iterable中的元素傳遞給function. 然后根據(jù)function返回的True或者False來判斷是否保留留此項數(shù)據(jù) , Iterable: 可迭代對象
搜索公眾號頂級架構師后臺回復“面試”,送你一份驚喜禮包。
語法 : map(function, iterable)
可以對可迭代對象中的每一個元素進行映射. 分別去執(zhí)行 function
hash : 獲取到對象的哈希值(int, str, bool, tuple). hash算法:(1) 目的是唯一性 (2) dict 查找效率非常高, hash表.用空間換的時間 比較耗費內存
map() 函數(shù)接受兩個參數(shù),一個是函數(shù),一個是可迭代對象(Iterable), map 將傳入的函數(shù)依次作用到可迭代對象的每一個元素,并把結果作為迭代器(Iterator)返回。
舉例說明,有一個函數(shù) f(x)=x^2 ,要把這個函數(shù)作用到一個list [1,2,3,4,5,6,7,8,9] 上:
運用簡單的循環(huán)可以實現(xiàn):
運用高階函數(shù) map() :
結果 r 是一個迭代器,迭代器是惰性序列,通過 list() 函數(shù)讓它把整個序列都計算出來并返回一個 list 。
如果要把這個list所有數(shù)字轉為字符串利用 map() 就簡單了:
小練習:利用 map() 函數(shù),把用戶輸入的不規(guī)范的英文名字變?yōu)槭鬃帜复髮懫渌懙囊?guī)范名字。輸入 ['adam', 'LISA', 'barT'] ,輸出 ['Adam', 'Lisa', 'Bart']
reduce() 函數(shù)也是接受兩個參數(shù),一個是函數(shù),一個是可迭代對象, reduce 將傳入的函數(shù)作用到可迭代對象的每個元素的結果做累計計算。然后將最終結果返回。
效果就是: reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
舉例說明,將序列 [1,2,3,4,5] 變換成整數(shù) 12345 :
小練習:編寫一個 prod() 函數(shù),可以接受一個 list 并利用 reduce 求積:
map() 和 reduce() 綜合練習:編寫 str2float 函數(shù),把字符串 '123.456' 轉換成浮點型 123.456
filter() 函數(shù)用于過濾序列, filter() 也接受一個函數(shù)和一個序列, filter() 把傳入的函數(shù)依次作用于每個元素,然后根據(jù)返回值是 True 還是 False 決定保留還是丟棄該元素。
舉例說明,刪除list中的偶數(shù):
小練習:用 filter() 求素數(shù)
定義一個篩選函數(shù):
定義一個生成器不斷返回下一個素數(shù):
打印100以內素數(shù):
python內置的 sorted() 函數(shù)可以對list進行排序:
sorted() 函數(shù)也是一個高階函數(shù),還可以接受一個 key 函數(shù)來實現(xiàn)自定義排序:
key 指定的函數(shù)將作用于list的每一個元素上,并根據(jù) key 函數(shù)返回的結果進行排序.
默認情況下,對字符串排序,是按照ASCII的大小比較的,由于'Z' 'a',結果,大寫字母Z會排在小寫字母a的前面。如果想忽略大小寫可都轉換成小寫來比較:
要進行反向排序,不必改動key函數(shù),可以傳入第三個參數(shù) reverse=True :
小練習:假設我們用一組tuple表示學生名字和成績: L = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)] 。用sorted()對上述列表分別按c成績從高到低排序:
運用匿名函數(shù)更簡潔:
目錄
一、寫一個函數(shù)求三個數(shù)的和,并返回結果
二、寫一個函數(shù)求三個數(shù)的平均值,并返回結果
三、再寫一個函數(shù)求每個數(shù)與平均值之間的差,并返回結果
【相關學習推薦:python教程】
python做數(shù)學函數(shù)題的方法:
1、打開CMD命令行以后我們先來看一個求平方的函數(shù),如下圖所示,用pow即可計算某個數(shù)的幾次方
2、接下來我們可以運用abs函數(shù)來求某一個數(shù)的絕對值,如下圖所示
3、在遇到小數(shù)的時候,我們經(jīng)常需要舍棄小數(shù)的部分直接用整數(shù),那么就可以用floor函數(shù)了,但是直接用的話是報錯的,如下圖所示
4、這個時候我們需要導入math模塊,因為floor函數(shù)在math模塊中,如下圖所示
5、接下來我們還會用到math函數(shù)中的開平方根的函數(shù)sqrt,如下圖所示
6、最后我們在應用數(shù)學函數(shù)的時候可以直接將起賦值給某個變量,然后直接調用該變量即可,如下圖所示
了解 Python 編程基礎
首先第一點,要能夠看懂了解變量、基礎語法、編程規(guī)范等,這些事能夠上手編寫Python 代碼的前提。
其次第二點,對于數(shù)據(jù)結構,字符串、列表、字典等需要比較熟練運用。
剛開始的這部分就做一些簡單的練習,構造出一個數(shù)據(jù)類型,然后再實現(xiàn)基本的用法。比如你自己構造一個列表,實現(xiàn)列表中數(shù)據(jù)的訪問、更新、刪除等基本操作,比如len()、max()、min() 函數(shù),以及 append()、count()、extend() 等方法。
Python函數(shù)及流程控制
有了前面的基礎練習之后,學習Python的函數(shù)和控制語句,是真正去解決問題的過程,如何將固定的功能模塊封裝成函數(shù),如何實現(xiàn)判斷和循壞,這些不僅是寫出代碼的必要條件,也是訓練編程思維的必經(jīng)之路。
流程控制比較好掌握一些,條件語句和循壞語句在不同的場景下練習幾遍,知道判斷和循環(huán)實現(xiàn)的過程就行。
函數(shù)這個部分無外乎函數(shù)的定義、函數(shù)調用以及參數(shù)傳遞,但是要能夠熟練地寫出函數(shù)實現(xiàn)對應的功能,需要注意的細節(jié)很多。
利用Python做些事情
在前期的理論知識學透之后,你不妨嘗試著利用利用Python做些事情,檢驗自己的學習成果,這樣也能夠鞏固加深自己學習的理論知識。同時,可以查漏補缺,看看自己哪方面需要保持,哪方面需要繼續(xù)學習。
這個時候不妨了解一些第三方庫,你可以做更多的事情。對于不同的庫,內部的方法、函數(shù)你還需要去熟悉,開始的時候先掌握少部分最常用的方法,在遇到實際的問題的時候,再去查對應的更多的用法,這樣會更高效。
深入Python編程
首先需要了解Python的高級特性,如迭代器、生成器、裝飾器等,了解類和面向對象的理念。深入下去,你可以去探索Python的實現(xiàn)原理,Python的性能優(yōu)化,跳出Python語言本身,去了解計算機的交互原理,還有很長的路要走,但并不是每一個人都需要這個過程。
但這些確實是你在這個領域立足生根的重要條件,對于特別想要在IT行業(yè)發(fā)展的人來說,這個過程是非常有必要的。
以上就是關于如何快速入門Python編程的內容,希望可以為您提供一些幫助。如果您還想了解更多關于數(shù)據(jù)分析師、大數(shù)據(jù)工程師、Python編程素材及方法等內容,可以點擊本站的其他文章進行學習。
文章題目:python函數(shù)綜合訓練 python基礎訓練
URL標題:http://chinadenli.net/article46/hgoseg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設、外貿網(wǎng)站建設、網(wǎng)站排名、微信公眾號、靜態(tài)網(wǎng)站、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)