python基本知識點

#1.一行代碼實現(xiàn)1--100之和

print(sum(range(0,101)))

#如何在一個函數(shù)內部修改全局變量

a =3

def fun():

global a

a? =5

fun()

print(a)

#2.列出幾個python 標準庫

'''

sys: python運行環(huán)境的變量和函數(shù),與解釋器之間交互。如:sys.argv? sys.version

os: 提供python與操作系統(tǒng)的交互os.remove() os.rename() os.getcwd()

re: 正則,檢測字符串是否與某種模式匹配re.match() re.search() re.findall() re.sub()

math: 數(shù)學類。絕對值 隨機數(shù)等zipfile:zip文件包的解壓'''

#3.python GIL

#全局解釋器鎖

# https://blog.csdn.net/weixin_41594007/article/details/79485847

# 同一個進程中有多個線程進行,

#4.字典中如何刪除和合并字典

# del 刪除? update 合并

#5.*args? **kwargs 函數(shù)定義

# 用于定義函數(shù),*args用于定義不定數(shù)量的參數(shù), **kwargs定義不定長度的鍵值對

def demo(a,*args):

print(a)

for uin args:

print(u)

demo("1","2","3","4")

#6.python的內建數(shù)據類型

# int 整型

# bool 布爾型

# str 字符串

# list 列表

# tuple 元祖

# dict 字典

#7.簡述面向對象中__new__和__init__區(qū)別

# __init__是初始化方法,創(chuàng)建對象后,就立刻被默認調用了,可接收參數(shù)

# __new__必須要有返回值,返回實例化出來的實例

#8.簡述with方法處理文件

# f = open("./1.txt")

# 打開文件在進行讀寫的時候可能會出現(xiàn)一些異常狀況,如果按照常規(guī)的f.open寫法,

# 我們需要try,except,finally,做異常判斷,并且文件最終不管遇到什么情況,

# 都要執(zhí)行finally f.close()關閉文件,with方法幫我們實現(xiàn)了finally中f.close

#9.列出python中可變數(shù)據類型和不可變數(shù)據類型,并簡述原理

# 不可變數(shù)據類型:數(shù)值型、字符串型string和元組tuple不允許變量的值發(fā)生變化

# 可變數(shù)據類型:列表list和字典dict;

#10.re正則

# re.compile是將正則表達式編譯成一個對象,加快速度,并重復使用。

#11.談談python內存機制

# 垃圾回收機制

# Python的垃圾回收機制采用引用計數(shù)機制為主,標記-清除和分代回收機制為輔的策略。其中,標記-清除機制用來解決計數(shù)引用帶來的循環(huán)引用而無法釋放內存的問題,分代回收機制是為提升垃圾回收的效率。

#

# 引用計數(shù)

# Python通過引用計數(shù)來保存內存中的變量追蹤,即記錄該對象被其他使用的對象引用的次數(shù)。Python中有個內部跟蹤變量叫做引用計數(shù)器,每個變量有多少個引用,簡稱引用計數(shù)。當某個對象的引用計數(shù)為0時,就列入了垃圾回收隊列。

1.jwt

Json web token (JWT), 網絡應用環(huán)境間傳遞聲明而執(zhí)行的一種基于JSON的開放標準。該token被設計為緊湊且安全的,特別適用于分布式站點的單點登錄(SSO)場景。也可直接被用于認證,也可被加密。

session 認證,遵循的是無狀態(tài)的協(xié)議,一般將登陸信息存放在session會話里,因為其存在內存中,所以無法承受更多的用戶。

開銷大,拓展性高,如果別截獲,安全性

基于token的鑒權。

jwt 主要包含3個方面:

header頭部? ?payload載荷? signature簽證

header 主要包含? 聲明類型? 加密方式

palyload 載荷就是存放有效信息的地方

signature 簽證信息

其中部分都是通過 base64加密后使用

2.redies

Redis?高性能非關系型(NoSQL)的鍵值對(key value)數(shù)據庫。

鍵的類型只能是字符串,值可以為字符串 列表 集合等

與傳統(tǒng)的數(shù)據庫不同的是 Redis的數(shù)據存在內存之中,所以讀寫速度很快。

讀的速度11W/s 次,寫的速度是8.1W次/s。

優(yōu)缺點:

1.讀寫性能優(yōu)異

2.支持數(shù)據持久化

3支持事務,原子性

4數(shù)據結構豐富,還只是hash set

5.支持主從復制,主機將自動將數(shù)據同步到叢集,可以進行讀寫分離。

缺:數(shù)據庫收到物理內存的限制,是適用海量的數(shù)據進行高性能的讀碟

?很難支持在線擴容

為什么要用REDIS?

主要從“高性能”和“高并發(fā)”看待問題:

1高性能? 緩存操作就是操作內存

2.高并發(fā):數(shù)據庫處理多個請求,

持久化:

持久化就是把內存的數(shù)據 寫到磁盤中去,防止服務宕機了內存數(shù)據丟失。

Redis 提供兩種持久化機制 RDB(默認) 和 AOF 機制:

RDB:是Redis DataBase縮寫快照

RDB是Redis默認的持久化方式。按照一定的時間將內存的數(shù)據以快照的形式保存到硬盤中,對應產生的數(shù)據文件為dump.rdb。通過配置文件中的save參數(shù)來定義快照的周期。

AOF 機制:),則是將Redis執(zhí)行的每次寫命令記錄到單獨的日志文件中,當重啟Redis會重新將持久化的日志中文件恢復數(shù)據。

3.linux?

查看文件 cat file?

顯示工作路徑 pwd

查看文件和目錄 tree

查看端口 netstat -lnp

本地名? hostname

顯示系統(tǒng)當前進程 top

改變文件或目錄的權限 chmod

? 顯示瞬間進程狀態(tài) ps -aux

4 二叉樹 紅黑樹

5.osi系統(tǒng)互聯(lián)通信參考模型

網絡通信協(xié)議,操作系統(tǒng)管理機器硬件和軟件資源的計算機程序。

client----基于網絡通信----server

browser----基于網絡通信-----server

?應用層 (應用層,表示層,會話層)? ?http(超文本連接協(xié)議)

?傳輸層? ? ?tcp

??網絡層? ?tp

? 網絡接口層 (數(shù)據鏈路層,物理層)

HTTP也是無狀態(tài)的協(xié)議,也就是對于事務處理是沒有記憶的,如果需要處理先前的信息,必須要進行重傳。

比如最開始訪問一個網站是什么樣,重啟瀏覽器后訪問,仍然是一樣的。

所以存儲信息就需要用到Cookie和Session。

Cookie和Session

由于HTTP的無狀態(tài),每次訪問都是一樣,但是我們需要一些個性化的定制時,就需要保存一些信息,這就用到了Cookie和Session。

Cookie是在客戶端的解決方案是服務器發(fā)給客戶端的特殊信息,將cookie信息存放在響應頭中,然后存放在客戶端中。

客戶端再次請求時,會把Cookie回發(fā)。

服務器收到后,解析請求頭的Cookie,生成對應內容。

比如我們登錄一些網站時,瀏覽器會詢問你是否存儲賬戶,就是將賬戶存入Cookie,下次訪問時就不需要再次輸入賬號進行登錄。

這些數(shù)據都是存放在客戶端(瀏覽器)中的,所以瀏覽器通常提供了管理Cookie的功能。

而Session是在服務器端的機制,會在服務器保存信息。

服務器在使用Session時,會解析客戶端的請求,并通過Session id操作對應的Session,保存用戶的狀態(tài)信息。

如果客戶端是首次請求不包含Session,服務器就為客戶端創(chuàng)建一個Session,并生成對應的Session id。

Session的兩種實現(xiàn)方式:

url回寫,服務器回發(fā)的所有頁面都帶入Session id

在這些頁面中點擊鏈接,都會傳入Session id,但是如果是url輸入訪問,就不會有Session id。

通過Cookie來實現(xiàn),將Session id存在Cookie中

Session更加安全

Cookie可以減少服務器負擔

請求頭

請求頭部由關鍵字/值對組成,每行一對,關鍵字和值用英文冒號“:”分隔。請求頭部通知服務器有關于客戶端請求的信息,典型的請求頭有:

User-Agent:產生請求的瀏覽器類型。

Accept:客戶端可識別的內容類型列表。

Host:請求的主機名,允許多個域名同處一個IP地址,即虛擬主機。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容