py python中的 和is的區別

2022-03-12 16:54:25 字數 622 閱讀 2179

舉個例子:a = 1

b = a

c = 1

d = 1.0

這裡有3個物件abc,型別都是int。值都是1。id(a) # 35556792l

id(b) # 35556792l

id(c) # 35556792l

id(d) # 21253459l

本例中,毫無疑問,3兄弟abc都是引用的同乙個位址35556792l下的內容。當你想判斷a is b的時候,實際上比較的是id(a)==id(b)。結果為true。

當你寫成a==b時候,實際上比較的是id(a)這個位址指向的值是不是和id(b)這個位址指向值一樣。結果為true。

同理,如果你寫的是a is d,那麼結果就是false。而此時,a==d,結果卻是true,因為值是一樣的。

py python的深拷貝和淺拷貝

python深複製淺複製or深拷貝淺拷貝 簡單點說 copy.copy 淺拷貝 只拷貝父物件,不會拷貝物件的內部的子物件。copy.deepcopy 深拷貝 拷貝物件及其子物件 用乙個簡單的例子說明如下 import copy a 1,2,3,4,a b c b a c copy.copy a d ...

SQL Server中的頁和區

sql server中的頁和區 真題1 sql server 的兩種存 儲結構是什麼?答案 sql server 的兩種儲存結構是頁與區間。1 頁 用於資料儲存的連續的磁碟空間塊,sql server 中資料儲存的基本單位是頁,磁碟 i o操作在頁級執行,頁的 大小為8kb 每頁的開頭是 96位元組...

記憶體中堆區和棧區的區別

從下面五個方面說一下記憶體中堆和棧的區別 1 管理方式 對於棧來講,是由編譯器自動管理,無需我們手工控制 對於堆來說,釋放工作由程式設計師控制,容易產生memory leak。2 申請大小 能從棧獲得的空間較小,堆是向高位址擴充套件的資料結構,是不連續的記憶體區域。堆的大小受限於計算機系統中有效的虛...