在學習Python的過程中,有幾個比較重要的內置函數(shù):help()函數(shù)、dir()函數(shù)、input()與raw_input()函數(shù)、print()函數(shù)、type()函數(shù)。
成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供麻江網站建設、麻江做網站、麻江網站設計、麻江網站制作等企業(yè)網站建設、網頁設計與制作、麻江企業(yè)網站模板建站服務,10年麻江做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。
第一、help()函數(shù)
Help()函數(shù)的參數(shù)分為兩種:如果傳一個字符串做參數(shù)的話,它會自動搜索以這個字符串命名的模塊、方法等;如果傳入的是一個對象,就會顯示這個對象的類型的幫助。比如輸入help(‘print’),它就會尋找以‘print’為名的模塊、類等,找不到就會看到提示信息;而print在Python里是一個保留字,和pass、return同等,而非對象,所以help(print)也會報錯。
第二、dir()函數(shù)
dir()函數(shù)返回任意對象的屬性和方法列表,包含模塊對象、函數(shù)對象、字符串對象、列表對象、字典對象等。盡管查找和導入模塊相對容易,但是記住每個模塊包含什么卻不是這么簡單,您并不希望總是必須查看源代碼來找出答案。Python提供了一種方法,可以使用內置的dir()函數(shù)來檢查模塊的內容,當你為dir()提供一個模塊名的時候,它返回模塊定義的屬性列表。dir()函數(shù)適用于所有對象的類型,包含字符串、整數(shù)、列表、元組、字典、函數(shù)、定制類、類實例和類方法。
第三、input與raw_input函數(shù)
都是用于讀取用戶輸入的,不同的是input()函數(shù)期望用戶輸入的是一個有效的表達式,而raw_input()函數(shù)是將用戶的輸入包裝成一個字符串。
第四、Print()函數(shù)
Print在Python3版本之間是作為Python語句使用的,在Python3里print是作為函數(shù)使用的。
第五、type()函數(shù)
Type()函數(shù)返回任意對象的數(shù)據(jù)類型。在types模塊中列出了可能的數(shù)據(jù)類型,這對于處理多種數(shù)據(jù)類型的函數(shù)非常有用,它通過返回類型對象來做到這一點,可以將這個類型對象與types模塊中定義類型相比較。
abs() divmod() input() open() staticmethod()
all() enumerate() int() ord() str()
any() eval() isinstance() pow() sum()
basestring() execfile() issubclass() print() super()
bin() file() iter() property() tuple()
bool() filter() len() range() type()
bytearray() float() list() raw_input() unichr()
callable() format() locals() reduce() unicode()
chr() frozenset() long() reload() vars()
classmethod() getattr() map() repr() xrange()
cmp() globals() max() reverse() zip()
compile() hasattr() memoryview() round() __import__()
complex() hash() min() set()
delattr() help() next() setattr()
dict() hex() object() slice()
dir() id() oct() sorted()
使用關鍵詞 def 聲明這是一個函數(shù)
1def 函數(shù)名 (參數(shù)):
2 語句塊
參數(shù)可以沒有,也可以有多個,用逗號隔開,第一行稱為函數(shù)頭,結尾一定要加冒號,代表開始進入函數(shù)體的執(zhí)行。
語句塊也就是函數(shù)體,是關于這個函數(shù)要實現(xiàn)的功能的語句,語句要有返回值即return語句,如果沒有return語句,就代表return none.
print()函數(shù)用于打印輸出,是python中最常見的一個內置函數(shù)。
print()函數(shù)的語法如下:
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)。
將"objects"打印輸出至"file參數(shù)"指定的文本流,以"sep參數(shù)"分隔開并在末尾加上"end參數(shù)"。"sep"、"end "、"file"和"flush"必須以關鍵字參數(shù)的形式給出。flush關鍵字參數(shù)是在phthon3.3版后增加的。
所有非關鍵字參數(shù)都會被轉換為字符串,就像是執(zhí)行了str()一樣,并會被寫入到流,以“sep參數(shù)“且在末尾加上“end參數(shù)“。“sep參數(shù)“和“end參數(shù)“都必須為字符串;它們也可以為“None“,這意味著使用默認值。如果沒有給出“objects參數(shù)“,則print()將只寫入“end參數(shù)“。
ython print()函數(shù):
print()方法用于打印輸出,最常見的一個函數(shù)。
在Python3.3版增加了flush關鍵字參數(shù)。
print在Python3.x是一個函數(shù),但在Python2.x版本不是一個函數(shù),只是一個關鍵字。
1、get函數(shù)利用鍵來獲取值
在獲取值得時候常用的方法就是直接,但這種方法中當字典中不存在該鍵時會返回KeyError類型錯誤,此時就可以用get函數(shù)還利用鍵獲取值,利用get函數(shù)操作時當字典中不存在輸入的鍵時會返回_個None,這樣程序運行時就不會出異常。
2、利用字典統(tǒng)計列表中元素出現(xiàn)次數(shù)
get函數(shù)在這里有兩個參數(shù),第_個是確定要分配值的鍵,第_個是擬定給鍵分配_個初值,但實際要給鍵賦值仍需要get賦值語句。擬定初值語句本身對結果是沒有影響的,因為并沒有實際的對鍵進行賦值語句操作。
4.6. 定義函數(shù)
我們可以創(chuàng)建一個用來生成指定邊界的斐波那契數(shù)列的函數(shù):
def fib(n): # write Fibonacci series up to n
... """Print a Fibonacci series up to n."""
... a, b = 0, 1
... while a n:
... print(a, end=' ')
... a, b = b, a+b
... print()
...
# Now call the function we just defined:
... fib(2000)
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597
關鍵字 def 引入了一個函數(shù) 定義。在其后必須跟有函數(shù)名和包括形式參數(shù)的圓括號。函數(shù)體語句從下一行開始,必須是縮進的。
函數(shù)體的第一行語句可以是可選的字符串文本,這個字符串是函數(shù)的文檔字符串,或者稱為 docstring。(更多關于 docstrings 的信息請參考 文檔字符串) 有些工具通過 docstrings 自動生成在線的或可打印的文檔,或者讓用戶通過代碼交互瀏覽;在你的代碼中包含 docstrings 是一個好的實踐,讓它成為習慣吧。
函數(shù) 調用 會為函數(shù)局部變量生成一個新的符號表。確切的說,所有函數(shù)中的變量賦值都是將值存儲在局部符號表。變量引用首先在局部符號表中查找,然后是包含函數(shù)的局部符號表,然后是全局符號表,最后是內置名字表。因此,全局變量不能在函數(shù)中直接賦值(除非用 global 語句命名),盡管他們可以被引用。
函數(shù)引用的實際參數(shù)在函數(shù)調用時引入局部符號表,因此,實參總是 傳值調用 (這里的 值 總是一個對象 引用 ,而不是該對象的值)。[1] 一個函數(shù)被另一個函數(shù)調用時,一個新的局部符號表在調用過程中被創(chuàng)建。
一個函數(shù)定義會在當前符號表內引入函數(shù)名。函數(shù)名指代的值(即函數(shù)體)有一個被 Python 解釋器認定為 用戶自定義函數(shù) 的類型。 這個值可以賦予其他的名字(即變量名),然后它也可以被當作函數(shù)使用。這可以作為通用的重命名機制:
fib
f = fib
f(100)
0 1 1 2 3 5 8 13 21 34 55 89
如果你使用過其他語言,你可能會反對說:fib 不是一個函數(shù),而是一個方法,因為它并不返回任何值。事實上,沒有 return 語句的函數(shù)確實會返回一個值,雖然是一個相當令人厭煩的值(指 None )。這個值被稱為 None (這是一個內建名稱)。如果 None 值是唯一被書寫的值,那么在寫的時候通常會被解釋器忽略(即不輸出任何內容)。如果你確實想看到這個值的輸出內容,請使用 print() 函數(shù):