python if in 語句_【Python】IF 條件語句總結
阿新 • • 發佈:2021-02-12
技術標籤:python if in 語句
Python條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的程式碼塊。
if 語句用於控制程式的執行,基本形式為:
if 判斷條件:
執行語句……
else:
執行語句……
if 語句的判斷條件可以用>(大於)、<(小於)、==(等於)、>=(大於等於)、<=(小於等於)來表示其關係。
日常工作中用到“==”的情況比較多,我把這個“==”稱為精確匹配。有精確匹配也就有模糊匹配:startwith的方法,或者 in的方法。
資料來源如下:
注:
還有類似的問題2、問題3、問題4
日常需求背景:
1、需要將D3 - D7單元格內容更換成A - E。
2、單元格更換為A - E 後,進行批註。批註內容為原先單元格“A:”後的文字。
eg:D3單元格批註為:“有認真思需要做哪些工作,能結合上級的意見自我調整”
3、每兩週定時需要。
寫法1:
方法為IF (“==”)精確匹配的方法:
def tran_one(x): if x =='A:有認真思需要做哪些工作,能結合上級的意見自我調整': x = 'A' elif x == 'B:思考的不多,但能接受上級的意見,按照培訓中給的一些方法提高能力': x = 'B' return x data['1.是否能積極思考,主動提高自己?'] = data['1.是否能積極思考,主動提高自己?'].apply(tran_one)
寫法2:
用startswith()方法,因為評分的字元在字串的第一位。
如果評分的字元在字串的最後一位,可以用endswith()方法。
def tran_one(x):
if x.startswith('A'):
x = 'A'
return x
data['1.是否能積極思考,主動提高自己?'] = data['1.是否能積極思考,主動提高自己?'].apply(tran_one)
data['2.對使用者的態度怎麼樣?'] = data['2.對使用者的態度怎麼樣?'].apply(tran_one)
寫法3:
方法為IF (“in”)模糊匹配的方法:
def tran_one(x):
if 'A' in x:
x = 'A'
elif 'B' in x:
x = 'B'
elif 'C' in x:
x = 'C'
elif 'D' in x:
x ='D'
elif 'E' in x:
x = 'E'
return x
data['1.是否能積極思考,主動提高自己?'] = data['1.是否能積極思考,主動提高自己?'].apply(tran_one)
data['2.對使用者的態度怎麼樣?'] = data['2.對使用者的態度怎麼樣?'].apply(tran_one)
總結:
1、寫法2、3更加優於寫法1,因為寫完一個函式方法,不用重複把每一個問題裡面的A、B、C、D,用”==“寫一遍。有幾個問題,就套用一遍就行。
Python:startswith()、endswith()方法:
一、startswith()方法語法:
- string.startswith(str, beg=0,end=len(string));
引數:
- str -- 檢測的字串。
- strbeg -- 可選引數用於設定字串檢測的起始位置(可選,從左數起)。
- strend -- 可選引數用於設定字串檢測的結束位置(可選,從左數起)。
返回值:
如果檢測到字串則返回True,否則返回False。
二、endswith()方法語法:
- string.endswith(str, beg=[0,end=len(string)]);
引數:
- str -- 檢測的字串。
- beg -- 可選引數用於設定字串檢測的起始位置(可選,從左數起)。
- end -- 可選引數用於設定字串檢測的起始位置(可選,從左數起)。
返回值:
如果檢測到字串則返回True,否則返回False。