本文目錄一覽:
- 1、IF函數請高手指點怎麼用
- 2、python中if函數判斷數值是否能被整除?
- 3、python提供了哪三個非常重要的語句來應對python程序在運?
- 4、python想統計數據框中指定一列的頻數,要使用以下哪個函數?
- 5、pythonif函數怎麼寫
IF函數請高手指點怎麼用
if就是個判斷語句不同的語言中使用if
的語法有點區別,比如在C#就是if(a
=
b
是true的話){就執行這裡語句}else{執行這裡}在python語言下就是if
a
=
b不用加括號,如果a=b為真:那麼就執行這裡else:執行這裡。。
python中if函數判斷數值是否能被整除?
可以用求餘數判斷是否能夠整除,例如:
a=2
b=3
c=4
然後判斷結果是否為0就可以。
那麼b%a為true
c%a為false
python提供了哪三個非常重要的語句來應對python程序在運?
1、If語句詳解與實踐
之前已經用過很多次If函數了,這邊我再做一個簡單介紹和一些新內容的補充吧,If函數的底層邏輯就是用來判斷,如果滿足條件則執行下面的語句。
基本的語法邏輯如下,注意記得寫冒號及代碼前的縮進:
if 條件:
代碼1
else:
代碼2
1
2
3
4
其中兩個注意點,之前也提過了,就是縮進與英文格式的標點符號,有的時候,你忘記縮進或者冒號是中文格式的時候,程序就會報錯,不過Pycharm和Spyder都會在那一行提醒你這一行的寫法有問題,所以倒也不用太擔心。
現在我們再來看看之前寫過這個代碼,是不是會感覺清晰很多呢。
score = 100
year = 2018
if (score 0) and (year == 2018):
print(‘錄入數據庫’)
else:
print(‘不錄入數據庫’)
1
2
3
4
5
6
我們下面再補充些內容,其實掌握上面的內容已經完全足夠了,下面的只是作為一個知識點的補充。比如你考試考了80分,最簡單的是:
score = 85
if score = 60:
print(‘及格’)
else:
print(‘不及格’)
1
2
3
4
5
我相信現在大家看這個代碼已經完全沒有問題了,輸出肯定是‘及格’。那如果我除了想判斷是否及格外,還想看它是否優秀(大於80分),則輸出‘優秀’,該怎麼弄呢。
score = 55
if score = 80:
print(‘優秀’)
elif (score = 60) and (score 80):
print(‘及格’)
else:
print(‘不及格’)
1
2
3
4
5
6
7
這邊唯一的一個不同,就是中間加入了一個elif,這個其實就是elseif的縮寫,用來提供多個結果使用的,
其實這個我做項目的時候基本沒有用過,大家簡單了解下即可。
2、For語句詳解與實踐
For語句之前有提到過一次,它的重要程度可以說僅次於If語句了,它的底層邏輯是循環,其實While的底層邏輯是循環,不過還是For用的更加普遍些。
For語句的常見使用格式為,注意記得寫冒號及代碼前的縮進:
for i in 區域:
代碼
1
2
先舉個之前講列表的時候講過的例子:
class1 = [‘丁一’, ‘王二麻子’, ‘張三’, ‘李四’, ‘趙五’]
for i in class1:
print(i)
1
2
3
用大白話來說就是:
列表class1 = [‘丁一’, ‘王二麻子’, ‘張三’, ‘李四’, ‘趙五’]
對於class1中的所有元素i:
我們都把它打印輸出出來
1
2
3
這個輸出代碼為:
丁一
王二麻子
張三
李四
趙五
1
2
3
4
5
這個i可以換成任何東西,比如你換成j,換成一個字符串,只要和下面的print()裡面的內容匹配即可。
比如我們可以寫:
class1 = [‘丁一’, ‘王二麻子’, ‘張三’, ‘李四’, ‘趙五’]
for haha in class1:
print(haha)
1
2
3
這樣輸出的結果其實是一樣的。
For語句還通常與range()函數合用,range函數的話其實就是一個類似於list的東西,只不過它可能更像list的長度,你想循環多少次,在range的括號里填寫幾就可以,比如我寫for i in range(3),那麼它就是循環3次:
for i in range(3):
print(‘hahaha’)
1
2
這個它就會輸出三行‘hahaha’。
我擔心大家可能會對這個for i in range(3)中的i還有疑惑,剛剛i不是代表列表裡的每一個元素嗎,這邊這個i又是什麼意思呢?這邊我給大家做一個偷懶的總結:
(1)對於”for i in 區域”來說,如果說這個區域是一個列表,那麼那個i就表示這個列表裡的每一個元素;
(2)對於”for i in 區域”來說,如果說這個區域是一個range(n),那麼那個i就表示0到n -1這n個數字,之前提到過,python中序號都是從0開始的,所以這邊也是從0開始,到n – 1結束。
(3)對於”for i in 區域”來說,如果說這個區域是一個字典,那麼i表示的就是字典的中的鍵(了解即可,很長一段時間用不到)
還有個非常重要的知識點:for i in range(5)的話,它的確會循環5次,但要注意,在python中,第一個元素的序號其實是0,所以如果我們輸入如下代碼:
for i in range(5):
print(i)
1
2
那麼輸出的結果是從0開始的,也就是0到4
1
2
3
4
1
2
3
4
5
這時候你可能要問,這玩意有什麼用?下面我就以輿情監控中的實戰來給大家講解下for語句在爬蟲實戰中的應用:
title = [‘標題1′,’標題2′,’標題3′,’標題4′,’標題5’]
for i in range(len(title)): #len(title)表示一個有多少個新聞,這裡是5
print(str(i+1) + ‘.’ + title[i]) #這個其實把字符串進行一個拼接
1
2
3
上面這幾行代碼已經很大程度就是你做項目實戰用到的代碼了,暫時看着有點暈也沒有關係,我在教學視頻里會詳細介紹下的。我先用大白話來解釋下這幾行代碼在幹嘛:
爬到了一些新聞標題,放到了title這個列表裡
用len(title)來獲取一共有多少條新聞,並利用for和range語句來進行循環:
打印輸出新聞標題,並且在前面加上序號
1
2
3
輸出結果如下圖所示:
其中有幾個小注意點,
(1)range(len(title))這邊就相當於range(5),因為len(title)就等於5,所以for i in range(len(title))就是循環5次,這裡的i就表示數字0-4。
(2)為什麼要寫str(i + 1),因為我們要標序號,’標題1’是字符串形式的,而i是數字,我們講過數字和字符串不能直接相加,所以要用str函數進行下轉換。
(3)至於為什麼不是str(i),而是str(i + 1)。是因為之前講列表的時候提到過,在編程中,第一個序號都是0,比如之前列表裡講過的class1[0]表示“丁一”一樣,這邊如果寫str(i)的話,那麼輸出的第一個序號就是“0.標題1”了。
(4)因為這裡的i就表示數字0-4,title[i]的話,表示列表中的第i+1個元素,所以title[0]的話就表示第1個元素,title[4]就表示第5個元素。
通過for循環和range()函數和len()函數的聯合使用,可以同時打印多個列表中的元素,代碼如下:
# 在實戰中的應用(可以同時打印多個列表中的內容)
title = [‘標題1’, ‘標題2’, ‘標題3’, ‘標題4’, ‘標題5’]
href = [‘網址1’, ‘網址2’, ‘網址3’, ‘網址4’, ‘網址5’]
for i in range(len(title)): # len(title)表示一個有多少個新聞,這裡是5;這裡的i就表示數字0-4
print(str(i+1) + ‘.’ + title[i]) # 這個其實把字符串進行一個拼接
print(href[i])
1
2
3
4
5
6
3、While語句詳解與實踐
While的底層邏輯也是循環,它和For的特點不一樣,最大的區別是For知道循環次數,而While的話則是不清楚循環次數。
其使用格式為,注意要寫冒號以及代碼前的縮進:
while 條件:
要執行的的代碼
1
2
舉個例子給大家看下:
a = 1
while a 3:
print(a)
a = a + 1 #或者寫成 a += 1
1
2
3
4
它白話的意思就是:
首先將1賦值給a
當 a 小於3的時候:
打印輸出a
a 在原來的基礎上加上1
1
2
3
4
a一開始等於1,滿足小於3的條件,會打印輸出1,然後a加上1等於2,此時a仍然小於3,所以仍然會執行打印輸出的命令,此時打印輸出2,然後a在2的基礎上加上1等於3,此時a已經不滿足小於3的條件了,那麼循環此時便終止了。最後輸出如下:
1
2
1
2
大家可以試着把數字3換成別的數試試看。
其實我們之後大多情況下用到While的時候,就是讓While來一直循環(如果用for i in range(n),無論n多大,那麼早晚都有結束的時候),這個在爬蟲實戰中的具體應用是:當每爬完一次,就自動進行下一次爬取,實現24小時不間斷爬取。那麼While如何能實現一直循環呢?
具體的方法其實很簡單,那就用while True進行永久循環。
while True:
代碼塊
1
2
給大家截個圖看下,下面這張圖就是最終的代碼效果,這個while True就是輿情監控系統實現24小時不間斷爬取的秘訣,有個注意點,這個True得大寫首字母,之後講到的時候再詳細介紹:
大家如果想停止while True的不停的循環,可以在點擊右上角的紅色終止按鈕即可。我當初自己學的時候,寫過這麼兩行代碼
python想統計數據框中指定一列的頻數,要使用以下哪個函數?
Python想統計數據框中指定的一列數,那麼再說函數的時候,你可以使用if函數或者是其他的函數都可以。
pythonif函數怎麼寫
放一個實例吧
# 用戶輸入數字
num = float(input(“輸入一個數字: “))
if num 0:
print(“正數”)
elif num == 0:
print(“零”)
else:
print(“負數”)
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/249773.html