摘要:個數(shù)相等,順序?qū)?yīng)當(dāng)在函數(shù)參數(shù)里面使用的時候,可以在實參里面修改默認(rèn)值在調(diào)用函數(shù)傳入?yún)?shù)的時候,明確告訴實參,形參給傳的是那個實參的值,
變量
python3中變量的定義是不固定類型的(動態(tài)),區(qū)分大小寫
值類型 | 引用類型 |
---|---|
不可變的(值類型) | 可變的(引用類型) |
int (整型) | list (列表) |
str (字符串) | set (集合) |
tuple (元組) | dict (字典) |
通過內(nèi)置函數(shù)id(),可以知道變量在內(nèi)存的位置
b = "icessun" b = b + "hello" print(b) >>> "icessunhello" # 不是說字符串是不可變的嘛?怎么改變了
如果字符串可以改變,那么可以使用索引值給字符串賦值"python"[0] = "h" -----> 報錯,會發(fā)現(xiàn)報錯,是不行的。
上面程序的結(jié)果是因為,+連接符,把兩個字符串連接起來了,鏈接起來的值重新賦值給了b元素,使用id(b)函數(shù),會發(fā)現(xiàn)其實上面兩個b變量在內(nèi)存的位置是不一樣的,所以第一個b變量的值沒有改變,被覆蓋了。
乘方的表示法 :2**5 ----> 2的5次方=32
is / not is
a = (1,2,3) b = (1,3,2) print(a is b) # 元組是不可變的 print(a == b) # 元組是有序的,值是不相等的 >>> False False # 集合 a = {1,2,3} b = {1,3,2} print(a==b) # 集合是無序的,所以值是相等的 print(a is b) >>> True False # 字符串,數(shù)字 兩個取值相等,則is 返回True,但是數(shù)字有特殊 a = "icessun" b = "icessun" print(a is b) >>> True a = 1 b = 1 c = 1.0 print(a==b) print(a==c print(a is b) print(a is c) >>> True True True False
從上面可以看出,元組是不可變的,改變里面元素的位置就變成了兩個新的元組。is不是比較兩個變量的值是否相等,而是比較變量在內(nèi)存的地址是否相等,算術(shù)運算符==是比較值是否相等的
對象的三個特性 | 一切都是對象 |
---|---|
id()函數(shù):變量在內(nèi)存的地址 | is :身份運算符 |
type()函數(shù):類型判斷函數(shù) | isinstance(變量,(int,str,float....)) |
value值的比較 | == :算術(shù)比較符 |
判斷一個變量是否在一個變量里面 in / not in
b= "a" b in {"c":1} >>> False b=1 b in {"c":1} >>> False b="c" b in {"c":1} >>> True
優(yōu)先級:not > and > or
代碼編寫縮進(jìn)來區(qū)分代碼塊,沒有大括號{ }
pass:占位語句
常量一般大寫
單行注釋:#;推薦在這行語句的開頭寫,與上一條語句有空格
多行注釋: """注釋內(nèi)容"""
代碼后面不需要分號,有也可以
實例化一個對象,不需要new關(guān)鍵詞
a = input() a = int(a) print("a is " + str(a)) if a==1: print("apple") elif a==2: print("orange") elif a==3: print("banana") else: print("shoppingp") # 使用 if else if a==1: print("apple") else: if a==2: print("orange") else: if a==3: print("banana") else: print("shopping")
input()接收用戶的輸入,elif功能類似于switch功能;
int(a):因為終端輸入的是字符串,所以應(yīng)該強制轉(zhuǎn)為數(shù)字進(jìn)行比較
print("a is " + str(a)):字符串的拼接只能兩者都是字符串,否者會報錯
主要用來遍歷循環(huán):序列List,集合Set,字典Dict
a = [["apple","orange","banana","grape"],(1,2,3)] for x in a: for y in x: if y=="orange": break # continue print(y) # 默認(rèn)是換行(print(y,end="/n"))輸出的,要想不換行:print(y,end=" ");故可以在end里面添加其他的符號來連接字符 else: print("fruit is gone") >>> apple 1 2 3 fruit is gone
break跳出里面的for循環(huán),但是外面的for循環(huán)沒有跳出,還是會執(zhí)行;和else配對的是外面的for循環(huán),所以依然會執(zhí)行;要是在外層的for循環(huán)里面加入break,那么就不會執(zhí)行else語句;for循環(huán)后面有else語句,當(dāng)循環(huán)執(zhí)行完畢,也會依然接著執(zhí)行else語句,所以會輸出fruit is gone;一般不推薦在for循環(huán)后面使用else語句
循環(huán)中使用range()函數(shù)
for x in range(0,10): print(x,end="|") >>> 0|1|2|3|4|5|6|7|8|9| for x in range(10,0,-2): print(x,end="|") >>> 10|8|6|4|2| # 打印列表a中所有的基奇數(shù)項 a=[1,2,3,4,5,6,7,8] # 循環(huán)+range()函數(shù)的方法 for x in range(0,len(a),2): print(a[x]) # 列表的切片的方法 print(a[0:len(a):2]) >>> [1,3,7]
range()函數(shù)的作用類似于其他語言中的for(i = 初始值;i < 長度;i ++);里面可以傳入兩個或者三個參數(shù),兩個參數(shù)的時候表示的是:初始值,長度;傳入三個參數(shù)的時候表示的是:初始值,長度,步長
def ice(a,b): a1=a*3 b1=b*2+10 return a1,b1 ice_a1,ice_b1 = ice(3,6) print(ice_a1,ice_b1) >>> 9 22 a=1 b=2 ====> a,b,c=1,2,3 或者 (1,2,3) 當(dāng)abc都相等的時候:a=b=c=1 或者 a,b,c=1,1,1 c=3
序列解包:就是當(dāng)一個函數(shù)有多個返回值的時候,不需要使用一個變量接收到所有的返回值,然后又重新遍歷返回值,取到對應(yīng)的返回值;只需要使用和返回值個數(shù)對等的變量依次接收就行;當(dāng)然只是針對返回值是值類型的函數(shù)。個數(shù)相等,順序?qū)?yīng)
當(dāng)在函數(shù)參數(shù)里面使用的時候,可以在實參里面修改默認(rèn)值;在調(diào)用函數(shù)傳入?yún)?shù)的時候,明確告訴實參,形參給傳的是那個實參的值sum(y=3,x=2)
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/41105.html
摘要:時間永遠(yuǎn)都過得那么快,一晃從年注冊,到現(xiàn)在已經(jīng)過去了年那些被我藏在收藏夾吃灰的文章,已經(jīng)太多了,是時候把他們整理一下了。那是因為收藏夾太亂,橡皮擦給設(shè)置私密了,不收拾不好看呀。 ...
摘要:以下這些項目,你拿來學(xué)習(xí)學(xué)習(xí)練練手。當(dāng)你每個步驟都能做到很優(yōu)秀的時候,你應(yīng)該考慮如何組合這四個步驟,使你的爬蟲達(dá)到效率最高,也就是所謂的爬蟲策略問題,爬蟲策略學(xué)習(xí)不是一朝一夕的事情,建議多看看一些比較優(yōu)秀的爬蟲的設(shè)計方案,比如說。 (一)如何學(xué)習(xí)Python 學(xué)習(xí)Python大致可以分為以下幾個階段: 1.剛上手的時候肯定是先過一遍Python最基本的知識,比如說:變量、數(shù)據(jù)結(jié)構(gòu)、語法...
摘要:語言也被稱作為膠水語言,可以混合其他如,等來編程可以把其他語言制作的各種模塊尤其是很輕松的聯(lián)結(jié)在一起。會認(rèn)為子類是一種父類類型。 最近學(xué)習(xí)了python3的語法,整理記錄一下;語法是編程的先決條件,精通語法是編好程序的必要條件; 導(dǎo)語 給我最大的感覺是:這個語言的編寫,居然不使用 { }來控制代碼塊的區(qū)域,而是使用縮進(jìn)來分割代碼塊,所以使用python語言編寫的代碼不能壓縮混淆。能夠...
摘要:一積累中如何快速查看包中的源碼最常用的大開發(fā)快捷鍵技巧將對象保存到文件中從文件中讀取對象中的用法的配置詳解和代碼的格式詳解格式化內(nèi)容設(shè)置生成詳解注釋規(guī)范中設(shè)置內(nèi)存調(diào)試的小知識單步執(zhí)行命令的區(qū)別的動態(tài)代理機(jī)制詳解內(nèi)容有瑕疵,樓指正泛型繼承的幾 一、積累 1.JAVA Eclipse中如何快速查看jar包中 的class源碼 最常用的15大Eclipse開發(fā)快捷鍵技巧 Java將對象保存到...
閱讀 2902·2021-11-25 09:43
閱讀 2320·2021-11-24 09:39
閱讀 2708·2021-09-23 11:51
閱讀 1400·2021-09-07 10:11
閱讀 1449·2019-08-27 10:52
閱讀 1929·2019-08-26 12:13
閱讀 3356·2019-08-26 11:57
閱讀 1394·2019-08-26 11:31