python 高階程式設計學習筆記

2021-09-09 08:30:44 字數 933 閱讀 2385

2. enumerate 用法

i = 0

for el in ["a","b","c"]:

print(i,el)

i += 1

上面這個遠不如下面的方法:

for i,el in enumerate(["a","b","c"]):

print(i,el)

3. 合併兩個列表,最終生成乙個字典:

4. 序列解包

a,b,*rest = 1,2,3,4,5

print(rest) #[3,4,5]

5. 字典複製和遍歷的時間複雜度,看到下面這句話: 如果某個字典,歷史元素非常多,但中間操作過程中刪除了很多,只剩少數幾個元素, 這個時候複製和遍歷的時間複雜度都非常高, 有什麼好辦法嗎? ---建立乙個新的字典。

在複製和遍歷字典的操作中,最壞情況複雜度中的n是字典曾經達到的最大元素數目,而不是當前元素數目。換句話說,如果乙個字典曾經元素個數很多,後來又大大減少了,那麼遍歷這個字典可能要花費相當長的時間。因此在某些情況下,如果需要頻繁遍歷某個字典,那麼最好建立乙個新的字典物件,而不是僅在舊字典中刪除元素。

dic =   # 假如本字典歷史值曾經很多

dic_keys = dic.keys()

dic_values = dic_values()

'''#經歷了刪減

''''''

lis =

for item in zip(list(dic_keys),list(dic_values)):

new_dic = dict((x,y) for x,y in lis)

# 生成新的字典

應該能減小最終要複製或者遍歷時的時間複雜度,暫時想到了這個。 

python高階程式設計學習筆記 語法實踐

首先我們要了解的我們常用的python是由c語言實現的即cpython,python 3.6。python提供了許多內建的資料型別,如果選擇明智的話,可以高效解決許多問題。你可能已經學過下面這些集合型別,因為在開發過程中很常用 列表 list 元組 tuple 字典 dictionary 集合 se...

Python學習筆記 高階

定義乙個類 注意的是 在類中的每個函式中最少要有乙個self引數 其實這裡的self this class test name 張三丰 age 200 defsay self print hi i am san feng 例項化乙個物件 t1 test 通過物件呼叫自身的方法 t1.say pyth...

Python學習筆記 函式式程式設計 高階函式

根據廖雪峰python教程整理 高階函式英文叫higher order function 什麼是高階函式?我們以實際 為例子,一步一步深入概念。一 變數可以指向函式 以python 內建的求絕對值的函式 abs 為例,呼叫該函式用以下 abs 10 10 但是,如果只寫abs 呢?abs 可見,ab...