#在研究is的時候我有乙個顛覆我想象的發現
#我在查詢資料的時候發現實驗與理論上的結果不同,然後發現
#如果宣告乙個變數為乙個數字或者字串,與另乙個變數的內容相等,那麼這兩個變數歸為乙個位址
num = 1
lum = 1
print(num is lum) # =>true
#用id查詢位址
print(id(num), id(lum))# =>140704949384016 140704949384016
print()
#對其中乙個變數名重新賦值
num = num * 2
print(num is lum) # =>false
print(id(num), id(lum)) # =>140704949384048 140704949384016
#實驗結果不可思議,可以看到,原本兩個相同位址的變數,位址發生了改變
#數值不變的變數lum的位址不變,而數值改變的變數num被分配了乙個新的位址
#進一步**,現在改變lum的值,使其與num的值相同
print()
lum = lum * 2
print(num is lum) # =>true
print(id(num), id(lum))# =>140704949384048 140704949384048
#果不奇然,當lum的值與num相同時,lum的位址則改變為了num的位址,而原本lum的位址則不翼而飛
#這很神奇,不得不說,python在我們看不到的很多地方做了很多優化
#那麼誰主導這個位址呢,是lum?是num?還是單純是這個值呢?
print()
#我們繼續,首先重新宣告乙個變數
kum = 5
print(id(kum))# =>140704949384144
kum = 50
print(id(kum))# =>140704949385584
gum = 5
print(id(gum))# =>140704949384144
#可以發現,kum的值改變時,位址也隨之改變。
#當新宣告乙個變數,且變數等於先前的那個值的時候,這個新變數的位址又與之前那個完全相同了。
#那麼現在,我們可以認為是值主導這個位址了
#但在這個位址沒有變數名的時候,裡面是否還有這個值,我學疏才淺,不得而知。
希望有人能解答我最後乙個問題 Python 在機器學習時總結關於索引的乙個小細節
1.通過argsort函式發現的乙個細節 import numpy as data array 2,4,3,4 2,0,1,2 2,2,2,2 datasort data 1 argsort 0 data1 data data 1 argsort data2 data data 1 argsort ...
研究 termux 時遇到的詭異的問題
手上有個舊的android 手機 mi 5 plus閒置了兩年,效能還相當不錯的,就是螢幕被我摔花了,最近總想著讓他發揮點價值。突然想到能不能用它當小型linux伺服器放在家裡,用內網穿透工具 frp 將他的sshd 服務埠 的公網的伺服器上,這樣在外面就可以通過這台公網伺服器連線上這個 linux...
在C 中函式的研究
初學者往往會對函式這樣的問題比較的困惑,比如說 函式的引數方法以及函式的返回型別.對於這些問題如果沒有乙個系統了解,務必會是更深層次學習的乙個絆腳石.下面我就在c 中函式若干問題加以研究,希望各位學員能夠有深層次的了解.1.函式引數的傳遞方法.我們知道函式具體實現的時候需要從主調函式傳遞引數到被調函...