先執行**塊,不符合**塊才使用小資料池
數字支援範圍-5~256
is 和 ==
is:判斷兩個記憶體位址是否相同
==:判斷兩個值是不是相等
is相同的,==一定成立
==相同的,is不一定成立
字串字串在做乘法的時候總長度不能超過20
自己定義的字串,長度不限制,字串必須由數字,字母,下劃線組成
特殊字元(中文除外)最多允許有乙個駐留
字串*1就是賦值
數字全部駐留
字串字元做乘法,總長度不能超過20
自定義的都駐留
乘數為1的時候,是賦值
總結小資料池--支援:str,int,bool
小資料池數字:-5~256
小資料池字串:乘法時長度不能超過20
如何自己駐留:
需要使用python模組:from sys import intern:
定義集合就是個沒有值的字典,遵循:唯一,無序,元素可雜湊
集合是無序的用法增
s.update()#迭代新增
s.add()
不支援加法
刪s.pop() #隨機刪除
s.remove("元素") #通過元素刪除
del s #刪除整個集合
clear #清空
改先刪,再加
查for
去重原理時集合中的元素唯一
其他操作
差集 s1-s2
並集 s1 | s2
交集 s1 & s2
對稱差集--反交集 s1 ^ s2
print(s1 > s2) 超集 判斷s2是不是s1的子集
凍結集合
可變轉換成不可變
frozenset()
去重li=
print(list(set(li)))
定義淺拷貝:只拷貝第一層
會建立乙個新的容器,兩個列表公用乙份位址
修改不可變資料型別,不變動,修改可變資料型別,變動
怎麼用
dic = {} # "v":4
li = #[,,,,]
for i in range(0,5):
dic["v"] = i
print(li)
深拷貝:
import copy
li = [3,4,5,[1,2,3,4],6,7,8,]
l2 = copy.deepcopy(li)
li[-1]['k'] = "a"
print(li)
print(l2)
在哪用不讓修改原資料的時候
python 小資料池 深淺拷貝 集合
1.小資料池 1.1 塊 乙個檔案,乙個函式,乙個類,乙個模組,終端中每一行 1.1.1 數字 5 256 1.1.2 字串 乘法時總長度不能超過20 1.1.3 布林值 內容相同記憶體位址相同 1.2 小資料池 1.2.1 數字 5 256 1.2.2 字串 乘法時總長度不能超過20 1.2.3 ...
day06 小資料池 深淺拷貝 集合
小資料池 快取機制 駐留機制 只是一種規格,不會實際的開闢乙個空間 a 10 b 10 print a b a 10 b 10 print a is b is判斷基於記憶體位址進行判斷 print id a print id b 小資料池支援的物件也是 數字,字串,布林值 乘法的時候總長度不能超過2...
Python基礎之小資料池及深淺拷貝
先執行 塊,然後小資料池 塊機制內容 python在執行同乙個 塊的初始化物件的命令時,會檢查是否其值是否已經存在,如果存在,會將其重用。換句話說 執行同乙個 塊時,遇到初始化物件的命令時,他會將初始化的這個變數與值儲存在乙個字典中,在遇到新的變數時,會先在字典中查詢記錄,如果有同樣的記錄那麼它會重...