和廖雪峯大神的教程學了幾遍後,仍是出現了許多不足,因而就作一些回顧,列出一些python的細節問題,有一些就提一下,若是發現不清楚的話python
還請移步https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000繼續埋頭學習吧,加油啦程序員!c++
判斷與循環,後面必定要加「:」 程序員
if elif else 編程
is數組
in多線程
assertapp
for while contiue break函數
異常學習
raise try except finallyspa
with as
做用域
global nonlocal
匿名函數與協程
yield lambda
注意break和continue的區別 沒有++-- for循環值做用於容器
函數也是對象 編程簡介map reduce lambda x:x*100直接說明x的取法
list[]就是數組 容許負數索引,append用於插入函數,可是沒法合併兩個是列表的元素,這個時候要用extend
pop()刪除默認最後一個元素,pop(m)刪除指定
排序.sort() 能夠用.sort(key= lambda x : x[0])更加細緻的排每個元素裏面的元素
tuple() 至關於初始化之後不能更改的數組
set 至關於沒有重複元素的數組
字典di= {} 能夠理解爲key和value對應的hash表
遍歷for k in di:或者是for k,v in di.items:
數組切片 [0:3]前三個 [-1,-4,-1]就是最後三個 [::-1]切片反轉數組 切片是複製,因此改變不會影響原來的list
修改字符串 合拼 s='v'.join(li)其中li是一個list
切割字符串 s.split(',')把一個字符串按照','爲隔切開來變成單個的
面對對象 一切皆是對象
經常使用type查看對象類型
dir查看屬性和方法 self很重要,至關於c++的指針
文件的讀寫
f= open('text,txt','r') r就是read w就是write rw w+... f.read()全讀 一行行讀的話就for line in f.readlines 通常用tryfinally最後加上f.close()
這裏的話通常用with...as...的方法
with open('text.txt') as f: for line in f.readlines(): print (line)
這樣就不用擔憂忘記關閉文件了
多線程
import threading def thread_func(x): print('%d'%(x*100)) threads = [] for i in range(5): threads.append(threading.Thread(target=thread_func,args=(100,))) for thread in threads: thread.start() for thread in threads: thread.join()
args=(100,)中那個逗號千萬不能忘記
錯誤處理
try: r= 10/0 except ZeroDivisionError as e: print(type(e)) print(e) finally:
#這一步主要是防止資源泄露 print('Always come here.')
那麼看到這裏要是你發現基本沒什麼問題,說明你在基礎上其實底子已經不錯了,更多的就是本身去寫去看了