霧霾籠罩這座城市已有兩天,今天的aqi更是一度逼近500,讓疫情期間的我更加堅定了宅家不出門的決心。不知道是不是心理作用,彷彿今天炒的菜都有一股自然的菸味。
明明兩天前還晴空萬里,突然就說到前兩天講了變數的事,當我們想檢視這個變數的型別的時候,就可以用type()函式,例子奉上:
當然type()也能用來判斷型別是否相等
昨天說了pow(x,y)以後有沒有人試過x<0的時候輸出的是什麼?/斜眼笑
(複數一生之敵!復變十世之敵!)
其實到了這裡就已經可以用python完成一些非常基本的任務了,當初學c語言的時候老師留的第乙個任務就是,算賬:乙個商品多少錢,付多少錢找多少錢,在輸入付款金額的時候就要用到 input()函式 來獲取鍵盤輸入的值
a =
input()
print
(a)
然後run一下隨便輸入什麼都是可以的
input的括號裡是可以放東西的
>>
>a=
input
("輸入乙個值:"
)>>
>
type
(a)
如圖:
在這裡input以後的數是預設帶著「 」的,如果想得到其他型別的話,帶乙個強制轉換就可以了。
我變數差不多到這就講完了,以後再遇到別的變數會再補充的。
接下來再給明天的內容做個鋪墊:if語句
p =
3.14
r =float
(input
("圓半徑:"))
if r <0:
print
("圓半徑小於0,請重新輸入"
)elif r ==0:
print
("輸入半徑為0,請重新輸入"
)else
:print
("圓的直徑是:%5.2f"
%(r*2)
)print
("圓的周長是:%5.2f"
%(r*
2*p)
)print
("圓的面積是:%5.2f"
%(p*r**2)
)
都能看懂吧/斜眼笑
接下來對著這個程式來說一下這裡可能涉及到的知識:
這就和c語言中if(){}…else if(){}…else(){}是一樣的,只不過在python中,把大括號}}(禁止套娃)
換成了:冒號:冒號:冒號(梅開二度/重拳出擊)
是的沒錯,在python中,縮排是作為一種語法存在的。在c語言中,有分號、括號、大括號等等劃分不同語句方式,在python裡,為了劃分不同語句,則要用縮排的方法。
要知道什麼時候縮排,就要了解「行」的種類
第一種叫做物理行,
物理行就是程式看起來的行數,上程式:
a=
10b=
20c=
30
這裡物理行就是三行。
第二種叫邏輯行,
邏輯行就是實際上語句的行數,上程式:
a=
10; b=
20; c=
30;
為了區分語句,分號也是可以用的。
這是一行物理行,三行邏輯行
而下面這個
print
("a=%d b=%d c=%d"
%(a,b,c)
)
這就是三行物理行,一行邏輯行。
只有邏輯行要保證縮排的正確
也就是說,這三行程式寫成這樣也是可以的
print
("a=%d b=%d c=%d"
%(a,b,c)
)
輸出效果如圖:
所以怎麼才算是正常的縮排呢?(這個例子可能有點抽象且誇張)
正常的縮排大概就是這麼個意思(原諒我底子不夠厚,只能用畫圖的方式表達我內心所想),一般的ide都會自動縮排的其實。
這裡要額外說的一點就是,縮排不一定非要用「空格*4」或者是「tab」,他們是一樣的,而且tab代替多少格都是可以在ide裡設定的。
那麼回到剛才那個算圓的程式,如果我輸入的不是數字呢?為了避免輸入錯誤導致的程式報錯,就要用到像try: …except: …這樣的異常處理語句,這個以後有機會再講。
注意這個「valueerror」或者其他類的報錯,劃重點,以後會用到的。
…今天講到這就差不多了
今天其實也沒說啥,我本以為今天就可以正兒八經地好好更新了的:
type()
input()
if語句的部分內容
縮排其實天還是挺好的,光注意霧霾了,剛才仔細一看窗外,地也長草了樹也抽芽了,跟70天前的一片荒地相比還是很nice的,也許哪天下了雨以後就能清亮不少了吧,在此獻上我對所有人的美好祝願:
學python爬蟲第三天
這個就需要手動去 裡面找cookie 然後複製到 裡,超長cookie import requests 定義請求的url url 定義請求頭資訊 headers 發起get請求 res requests.get url url,headers headers 獲取相應狀態碼 code res.sta...
學python的第三天
一 while迴圈 二 使用while迴圈實現 0 100相加 i 1 sum 0 while i 100 num sum i sum i i 1 print sum print 第一次迴圈 i 1,sum 0,sum sum i 0 1 1,sum 1,i 2 第二次迴圈 sum 1,i 2,su...
變數 第三天
j ascript 是個弱型別 例如 alert 15 true nan 體現了j ascript的弱型別 2 var num1 1 複製變數值 var num2 num1 該 num2 只是1 的乙個副本 兩個變數參與任何操作都不會有影響 3 var obj1 new object var obj...