8個最經常使用的Python內置函數,小白必備!

題圖:Photo by Markus Spiske on Unsplashpython

Python給咱們內置了大量功能函數,官方文檔上列出了69個,有些是咱們是平時開發中常常遇到的,也有一些函數不多被用到,這裏列舉被開發者使用最頻繁的8個函數以及他們的詳細用法函數

print()

print函數是你學Python接觸到的第一個函數,它將對象輸出到標準輸出流,可將任意多個對象打印出來,函數的具體定義:學習

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

 

objects 是可變參數,因此你能夠同時將任意多個對象打印出來編碼

>>> print(1,2,3)1 2 3

 

默認使用空格分隔每一個對象,經過指定sep參數可使用逗號分隔spa

>>> print(1,2,3, sep=',')
1,2,3

 

對象默認輸出的是標準輸出流,你也能夠將內容保存到文件中code

>>> print(1,2,3, sep=',', file=open("hello.txt", "w"))

 

isinstance()

能夠用 isinstance 函數判斷某個對象是否屬於某個類的實例,函數的定義對象

isinstance(object, classinfo)

 

classinfo 既能夠是單個類型對象,也能夠是由多個類型對象組成的元組,只要object的類型是元組中任意一個就返回True,不然返回Falseblog

>>> isinstance(1, (int, str))
True
>>> isinstance("", (int, str))
True
>>> isinstance([], dict)
False

 

range()

range函數是個工廠方法,用於構造一個從[start, stop) (不包含stop)之間的連續的不可變的整數序列對象,這個序列功能上和列表很是相似,函數定義:排序

range([start,] stop [, step]) -> range object

 

  • start 可選參數,序列的起點,默認是0索引

  • stop 必選參數,序列的終點(不包含)

  • step 可選參數,序列的步長,默認是1,生成的元素規律是 r[i] = start + step*i

生成0~5的列表

>>>
>>> range(5)
range(0, 5)
>>>
>>> list(range(5))
[0, 1, 2, 3, 4]
>>>

 

默認從0開始,生成0到4之間的5個整數,不包含5,step 默認是1,每次都是在前一次加1

若是你想將某個操做重複執行n遍,就可使用for循環配置range函數實現

>>> for i in range(3):
...     print("hello python")
...
hello python
hello python
hello python

 

步長爲2

>>> range(1, 10, 2)
range(1, 10, 2)
>>> list(range(1, 10, 2))
[1, 3, 5, 7, 9]

 

起點從1開始,終點10,步長爲2,每次都在前一個元素的基礎上加2,構成1到10之間的奇數。

enumerate()

用於枚舉可迭代對象,同時還能夠獲得每次元素的下表索引值,函數定義:

enumerate(iterable, start=0)

 

例如:

>>> for index, value in enumerate("python"):
...     print(index, value)
...
0 p
1 y
2 t
3 h
4 o
5 n

 

index 默認從0開始,若是顯式指定參數start,下標索引就從start開始

>>> for index, value in enumerate("python", start=1):
...     print(index, value)
...
1 p
2 y
3 t
4 h
5 o
6 n

 

若是不使用enumerate函數,要獲取元素的下標索引,則須要更多的代碼:

def my_enumerate(sequence, start=0):
    n = start
    for e in sequence:
        yield n, e
        n += 1
>>> for index, value in my_enumerate("python"):
    print(index, value)

0 p
1 y
2 t
3 h
4 o
5 n

 

len

len 用於獲取容器對象中的元素個數,例如判斷列表是否爲空能夠用 len 函數

>>> len([1,2,3])
3
>>> len("python")
6

>>> if len([]) == 0:
        pass

 

並非全部對象都支持len操做的,例如:

>>> len(True)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: object of type 'bool' has no len()

 

除了序列對象和集合對象,自定義類必須實現了 __len__ 方法能做用在len函數上

reversed()

reversed() 反轉序列對象,你能夠將字符串進行反轉,將列表進行反轉,將元組反轉

>>> list(reversed([1,2,3]))
[3, 2, 1]

 

open()

open 函數用於構造文件對象,構建後可對其進行內容的讀寫操做

open(file, mode='r', encoding=None)

 

讀操做

#Python學習羣592539176
# 從當前路徑打開文件 test.txt, 默認以讀的方式
>>>f = open("test.txt")
>>>f.read()
...

 

有時還須要指定編碼格式,不然會遇到亂碼

f = open("test.txt", encoding='utf8')

 

寫操做

>>>f = open("hello.text", 'w', encoding='utf8')
>>>f.write("hello python"))

 

文件中存在內容時原來的內容將別覆蓋,若是不想被覆蓋,直接將新的內容追加到文件末尾,可使用 a 模式

f = open("hello.text", 'a', encoding='utf8')
f.write("!!!")

 

sorted()

sroted 是對列表進行從新排序,固然其餘可迭代對象都支持從新排放,返回一個新對象,原對象保持不變

>>> sorted([1,4,2,1,0])
[0, 1, 1, 2, 4]
相關文章
相關標籤/搜索