Python程式設計 小組技術分享會之is和

2021-08-21 18:53:39 字數 3460 閱讀 8704

# 字串是不可變型別

s = "pig"

"""id(s)

out[18]: 4355286776

"""s = "cat"

"""id(s)

out[20]: 4324273488

"""# 字串賦值

a == b

# out[13]: true

a is b

# out[12]: true

id(a)

# out[14]: 4368069552

id(b)

# out[15]: 4368069552

""""""

a == b

out[7]: true

a is b

out[8]: false

id(a)

out[5]: 4368267888

id(b)

out[6]: 4368267696

# 小整數

a = 256

b = 256

"""a == b

out[4]: true

a is b

out[5]: true

id(a)

out[13]: 4297652576

id(b)

out[14]: 4297652576

"""a = 257

b = 257

"""a == b

out[8]: true

a is b

out[9]: false

id(a)

out[10]: 4367096688

id(b)

out[11]: 4367097168

# 2 ** 8 = 256

"""# 元組

t = (0, )

"""t

out[23]: (0, [1])

"""t[-1] += [1]

"""typeerror: 'tuple' object does not support item assignment

tout[25]: (0, [1, 1])

"""t[-1] = t[-1] + [2]

"""typeerror: 'tuple' object does not support item assignment

tout[28]: (0, [1, 1])

[1] + [2]

out[27]: [1, 2]

"""# 字典的鍵

# ok

# error

# 列表複製

import copy

# 賦值

l1 = [1, 2, 3, ]

l2 = l1

"""l1

out[30]: [1, 2, 3, , 4]

l2out[31]: [1, 2, 3, , 4]

"""# 淺拷貝

l1 = [1, 2, 3, ]

l3 = copy.copy(l1)

"""l1

out[36]: [1, 2, 3, ]

l3out[37]: [1, 2, 3, , 5]

""""""

l1out[39]: [1, 2, 3, [6]]

l3out[40]: [1, 2, 3, [6], 5]

"""# 深拷貝

l1 = [1, 2, 3, ]

l4 = copy.deepcopy(l1)

"""l1

out[42]: [1, 2, 3, ]

l4out[43]: [1, 2, 3, [7]]

"""# 複製列表

l1 = [1, 2, 3]

l2 = l1

l3 = l1[:] # 推薦

"""id(l1)

out[45]: 4367794824

id(l2)

out[46]: 4367794824

id(l3)

out[47]: 4367785032

"""# 元組複製

t1 = (1, 2, 3)

t2 = t1

"""t1 is t2

out[48]: true

"""# 二維矩陣

l = [0, 0, 0] * 3

"""l

out[50]: [0, 0, 0, 0, 0, 0, 0, 0, 0]

"""matrix = [[0, 0, 0]] * 3

# 會引用同乙個列表

"""matrix

out[52]: [[0, 0, 0], [0, 0, 0], [0, 0, 0]]

matrix[0][0]=1

matrix

out[54]: [[1, 0, 0], [1, 0, 0], [1, 0, 0]]

"""matrix = [[0, 0, 0] for i in range(3)] # 推薦

"""matrix

out[56]: [[0, 0, 0], [0, 0, 0], [0, 0, 0]]

matrix[0][0]=1

matrix

out[58]: [[1, 0, 0], [0, 0, 0], [0, 0, 0]]

"""# none比較

a = none

b = none

"""a == b

out[20]: true

a is b

out[19]: true

id(a)

out[21]: 4297328656

id(b)

out[22]: 4297328656

"""a = 1

a is

none

# is判斷id

# out[60]: false

a = none

a is

none

# out[62]: true

# 排序

s = [1, 3, 2]

s.sort() # return none 原地操作

s# out[65]: [1, 2, 3]

sorted(s)

# out[66]: [1, 2, 3] # 返回新列表

sorted((1, 2, 3)) # 可迭代即可

# out[68]: [1, 2, 3]

tuple(1, 2, 3)

# typeerror: tuple() takes at most 1 argument (3 given)

# 檢查a is b 的時候,其實相當於檢查 id(a) == id(b)。

# 檢查 a == b 的時候,實際是呼叫了物件 a 的 __eq()__ 方法,a == b 相當於 a.__eq__(b)

# python列表可以存不同物件,其實是只儲存了物件的位址,位址的大小是固定的

技術分享會超詳細

1.技術分享,內容不限,主要對大多數開發技術人員有幫助均可分享。2.技術軟體分享,軟體不限,主要對開發有幫助的軟體運用,可以快速實現編碼過程或者減少開發步驟均可分享。3.專案實際發開過程中,如果你覺得那些地方編碼方式不對都可以分享出來,然後通過大家討論,覺得方案可行,後續可以按照這個方式編寫 4.專...

Python技術分享

python技術分享 來自於 黑夜路人 分享一下一些py的技術點 python 各個框架工具介紹 web開發框架 tornado 推薦,官網 bottle 一般,官網 flask 一般,官網 相關文件 web模板引擎 jinja 2 推薦,速度快,語法易用,官網 mako 一般,速度看,語法不易用,...

python爬蟲 個人技術分享

先來一張圖說明 反爬蟲方式 一 通過user agent來控制訪問 無論是瀏覽器還是爬蟲程式,在向伺服器發起網路請求的時候,都會發過去乙個標頭檔案 headers,表明身份 對於爬蟲程式來說,最需要注意的字段就是 user agent 很多 都會建立 user agent白名單,只有屬於正常範圍的u...