基礎知識python
Python 基礎(小知識點總結)linux
一、Python中是如何實現list和tuple之間的轉換的web
可使用內置函數直接轉換正則表達式
list ---> tuple tuple(list)算法
tuple ---> list list(tuple)數據庫
二、Python 中pass語句的做用編程
pass 語句不就執行任何操做,通常做爲佔位符或者建立站位程序數組
三、input()函數的理解瀏覽器
在Python3中, input()獲取用戶輸入,不論用戶輸入的是什麼,獲取到的都是字符串緩存
在Python2中,raw_input() 和input(), raw_put() 和Python3 中的input()做用是同樣的,input()輸入的是什麼類型的,獲取到的就是什麼類型的
四、寫出一段Python代碼實現刪除一個list裏面的重複元素
方法一 使用map的fromkeys來自動過濾重複值
a = [1,2,3,4,2,1,4,5,6]
b = {}
b = b.fromkeys(a)
print(b)
# 輸出{1: None, 2: None, 3: None, 4:None,5: None, 6: None}
a = list(b.keys())
print(a)
# 輸出 [1,2,3,4,5,6]
方法二 利用set(),set定義是定義集合的,無序,不重複。
a = [1,2,4,2,4,4,5,2]
# set是非重複的,無序集合。 能夠用set先進行去重 ,list()轉化成列表,a.sort來排序
a = list(set(a))
print(a)
# 輸出 [1,2,4,5]
五、在linux中find 和 grep 的區別
linux 系統中grep命令是一個強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來
grep全程是Global Regular Expression Print ,表示全局正則表達式版本,它 使用權限是全部用戶
而linux下的find
功能:在目錄結構中搜索文件,並執行指定的操做。此命令提供了至關多的查找條件,功能很強大
語法:find起始實目錄 尋找條件 操做
說明:find 命令從之低昂的起始目錄開始,遞歸地搜索其各個子目錄,查找知足尋找條件的文件並對之採起想換的操做
簡單的說, grep是查找匹配條件的行,find是搜索匹配條件的文件。
六、re模塊中的search() 和 match()的區別
match()函數值檢測RE是否是在string的開始位置匹配
search()會掃描整個string查找匹配
也就是說match() 只有在0 位置匹配成功的話纔有返回
若是不是開始位置匹配成功的話,match()就返回none
七、什麼是lambda函數,有什麼好處
lambda 函數是一個能夠接受任意多個參數而且返回單個表達式值的函數
一、lambda 函數比較輕便,很適合須要完成一項功能,可是此功能只在此一處使用,連名字都很隨意的狀況下
二、匿名函數,通常用來給filter,map這樣的函數式編程服務
三、做爲回調函數,傳遞給某些應該,好比消息處理
八、Python的參數傳遞是值傳遞仍是引用傳遞
Python的參數傳遞有:位置參數、默認參數、可變參數、關鍵字參數
函數的傳值究竟是值傳遞仍是引用傳遞,要分狀況:
不可變參數用值傳遞
像整數和字符串這樣的不可變對象,是經過拷貝進行傳遞的,由於你不管如何都不可能在原處改變對象
可變參數是引用傳遞
好比像列表,字典這樣的對象是經過引用傳遞、和c語言裏的用指針傳遞數組很類似,可變對象能在函數內部改變
九、面向對象的理解
面向對象是至關於面向過程而言的。面向過程語言是一種基於功能分析的、以算法爲中心的程序設計方法,而面向對象是一種基於結構分析的、以數據爲中心的程序設計思想,在面嚮對象語言中有一個很重要的概念,叫作類
面向對象有三大特徵:封裝、繼承、多態
十、交換倆個變量的值
a, b = b, a
十一、函數裝飾器有什麼做用,並舉出實例
裝飾器本質上是一個Python函數,它能夠在讓其餘函數在不須要作任何代碼的變更的前提下增長額外的的功能。
裝飾器的返回值也是一個函數的對象,它常常用於有其切面需求的場景
好比:插入日誌、性能測試、事務處理、緩存、權限的校驗等場景
有了裝飾器就能夠抽離大量的與函數功能自己無關的雷同代碼併發並繼續使用
十二、迭代器和生成器函數的區別
1三、Python中閉包的理解
在函數內部再定義函數,而且這個函數用到了外邊函數的變量,那麼將這個函數以及用到的一些變量稱之閉包。返回的是內部函數的引用
網絡編程相關知識
1、簡述TCP和UDP的區別以及優缺點
UDP是面向無鏈接的通信協議,UDP數據包括目的端口號和源端口號信息
優勢:UDP速度快、操做簡單、要求系統資源較少,因爲通信不須要鏈接,能夠實現廣播發送
缺點:UDP傳送數據前並不與對方創建鏈接,對接收到的數據也不發送確認信號,發送端不知道數據是否正確接收,也不重複發送,不可靠
TCP是面向鏈接的通信協議,經過三次握手創建鏈接,通信完成是四次揮手
優勢: TCP在數據傳遞時,有確認、窗口、重傳、阻塞等控制機制,能保證數據正確性,較爲可靠。
缺點: TCP相對UDP速度慢一點,要求系統資源較多
2、簡述瀏覽器經過WSGI請求動態資源的過程
3、描述用瀏覽器訪問www.baidu.com的過程
先要解析出baidu.com對應的IP地址
獲得了baidu.com對應的IP地址以後,會發送TCP的3次握手,進行鏈接