看來你是學(xué)c#不久的 private和public作為訪問權(quán)限來 控制變量的作用域是很有必要的 這直接關(guān)系到了變量被訪問的方式和范圍 還有你說的那個不是等價的 雖然從賦值的效果是一樣的 然而如果 你要從另外的類為 x y賦值的話private int x=0; 就做不到了 在后續(xù)的學(xué)習(xí)過程你會體會的
我們提供的服務(wù)有:成都做網(wǎng)站、網(wǎng)站設(shè)計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、七星關(guān)區(qū)ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的七星關(guān)區(qū)網(wǎng)站制作公司
那是默認(rèn)值,說明:如果quantity沒有賦值時默認(rèn)為0,也順便設(shè)定了int類
1、complex()
返回一個形如?a+bj?的復(fù)數(shù),傳入?yún)?shù)分為三種情況:
參數(shù)為空時,返回0j;參數(shù)為字符串時,將字符串表達式解釋為復(fù)數(shù)形式并返回;參數(shù)為兩個整數(shù)(a,b)時,返回?a+bj;參數(shù)只有一個整數(shù) a 時,虛部 b 默認(rèn)為0,函數(shù)返回?a+0j。
2、dir()
不提供參數(shù)時,返回當(dāng)前本地范圍內(nèi)的名稱列表;提供一個參數(shù)時,返回該對象包含的全部屬性。
3、divmod(a,b)
a -- 代表被除數(shù),整數(shù)或浮點數(shù);b -- 代表除數(shù),整數(shù)或浮點數(shù);根據(jù) 除法運算 計算 a,b 之間的商和余數(shù),函數(shù)返回一個元組(p,q)?,p 代表商?a//b?,q 代表余數(shù)?a%b。
4、enumerate(iterable,start=0)
iterable -- 一個可迭代對象,列表、元組序列等;start -- 計數(shù)索引值,默認(rèn)初始為0‘該函數(shù)返回枚舉對象是個迭代器,利用 next() 方法依次返回元素值,每個元素以元組形式存在,包含一個計數(shù)元素(起始為 start )和 iterable 中對應(yīng)的元素值。
def f(n): print(n) #實際調(diào)用f a = "sss" f(a) 在f函數(shù)中, n是函數(shù)f的形參, a是代入函數(shù)f的參數(shù),叫實參。其實這里n只是a的一個副本。 ========= 作用域問題 n = "yyy" def f(): print(n) 這里n不屬于任何函數(shù),n是一個全局變量,如果f中使用變量n,但是函數(shù)內(nèi)找不到,就會往外查找函數(shù)內(nèi)部-函數(shù)外部-全局-內(nèi)建
python函數(shù)參數(shù)為None的時候,比如
def
req(self,
b=None),是因為這個函數(shù)是一個封裝函數(shù),在沒有調(diào)用他的時候他的參數(shù)需要加上None。如果不加None值,不調(diào)用函數(shù)他會報錯。
一般會用在封裝類或者框架里。比如說框架一般會有一個總的調(diào)用函數(shù),總的調(diào)用函數(shù)啟動,這次沒有獲取到值,執(zhí)行到req函數(shù)時無法給req函數(shù)參數(shù),那如果沒有參數(shù)req函數(shù)就會報錯。一般會報:‘req()
missing
1
required
positional
argument:
'b'’但是如果參數(shù)為None就不會報錯。如果程序執(zhí)行到req參數(shù)傳遞成功的話,參數(shù)就不會是None了。
所以None是一個防止報錯的機制。