刻意练习:Python基础 -- Task02. 条件与循环
生活随笔
收集整理的這篇文章主要介紹了
刻意练习:Python基础 -- Task02. 条件与循环
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
背景
我們準備利用17天時間,將 “Python基礎的刻意練習” 分為如下任務:
- Task01:變量、運算符與數據類型(1day)
- Task02:條件與循環(1day)
- Task03:列表與元組(2day)
- Task04:字符串與序列(1day)
- Task05:函數與Lambda表達式(2day)
- Task06:字典與集合(1day)
- Task07:文件與文件系統(2day)
- Task08:異常處理(1day)
- Task09:else 與 with 語句(1day)
- Task10:類與對象(2day)
- Task11:魔法方法(2day)
- Task12:模塊(1day)
這是我的第二次打卡內容。我學習 Python 的思路是,先去熟悉 Python 的整體語法框架與自己熟悉的編程語言進行知識點的連接,后面遇到問題再來慢慢補充,慢慢形成自己的知識結構。
Python 基礎語法
1. 條件語句
if 語句
if expression:expr_true_suite- if 語句的 expr_true_suite 代碼塊只有當條件表達式 expression 結果為真時才執行,否則將繼續執行緊跟在該代碼塊后面的語句。
- 單個 if 語句中的 expression 條件表達式可以通過布爾操作符 and,or和not 實現多重條件判斷。
else 語句
if expression:expr_true_suite elseexpr_false_suite- Python 提供與 if 搭配使用的 else,如果 if 語句的條件表達式結果布爾值為假,那么程序將執行 else 語句后的代碼。
- Python 使用縮進而不是大括號來標記代碼塊邊界,因此要特別注意 else 的懸掛問題。
例子1
hi = 6 if hi > 2:if hi > 7:print('好棒!好棒!') else:print('切~')例子2
temp = input("不妨猜一下小哥哥現在心里想的是那個數字:") guess = int(temp) if guess > 8:print("大了,大了") else:if guess == 8:print("你是小哥哥心里的蛔蟲嗎?")print("哼,猜對也沒有獎勵!")else:print("小了,小了") print("游戲結束,不玩兒啦!")elif 語句
if expression1:expr1_true_suite elif expression2:expr2_true_suite.. elif expressionN:exprN_true_suite else:expr_false_suite- elif 語句即為 else if,用來檢查多個表達式是否為真,并在為真時執行特定代碼塊中的代碼。
assert 關鍵詞
- assert這個關鍵詞我們稱之為“斷言”,當這個關鍵詞后邊的條件為 False 時,程序自動崩潰并拋出AssertionError的異常。
- 在進行單元測試時,可以用來在程序中置入檢查點,只有條件為 True 才能讓程序正常工作。
2. 循環語句
while 循環
while expression:suite_to_repeat- while循環的suite_to_repeat子句會一直循環執行,直到expression值為布爾假
for 循環
for iter_var in interables:suite_to_repeat- 每次循環,iter_var 迭代變量被設置為可迭代對象 interales 的當前元素,提供給 suite_to_repeat 語句塊使用。
例子1
for i in 'ILoveLSGO':print(i, end=' ') # 不換行輸出# I L o v e L S G O例子2
member = ['張三', '李四', '劉德華', '劉六', '周潤發'] for each in member:print(each)# 張三 # 李四 # 劉德華 # 劉六 # 周潤發for i in range(len(member)):print(member[i])# 張三 # 李四 # 劉德華 # 劉六 # 周潤發range() 函數
range([start,] stop[, step=1])- 這個BIF(Built-in functions)有三個參數,其中用中括號括起來的兩個表示這兩個參數是可選的。
- step=1 表示第三個參數的默認值是1。
- range 這個BIF的作用是生成一個從start參數的值開始到stop參數的值結束的數字序列,該序列包含start的值但不包含stop的值。
例子1
for i in range(2, 9): # 不包含9print(i)# 2 # 3 # 4 # 5 # 6 # 7 # 8例子2
for i in range(1, 10, 2):print(i)# 1 # 3 # 5 # 7 # 9enumerate()函數
enumerate(sequence, [start=0])- sequence – 一個序列、迭代器或其他支持迭代對象。
- start – 下標起始位置。
- 返回 enumerate(枚舉) 對象
enumerate()與 for 循環的結合使用
for i, a in enumerate(A)do something with a用 enumerate(A) 不僅返回了 A 中的元素,還順便給該元素一個索引值 (默認從 0 開始)。此外,用 enumerate(A, j) 還可以確定索引起始值為 j。
languages = ['Python', 'R', 'Matlab', 'C++'] for language in languages:print('I love', language) print('Done!')''' I love Python I love R I love Matlab I love C++ Done! '''for i, language in enumerate(languages, 2):print(i, 'I love', language) print('Done!')''' 2 I love Python 3 I love R 4 I love Matlab 5 I love C++ Done! '''break 語句
- break語句可以跳出當前所在層的循環。
continue 語句
- continue終止本輪循環并開始下一輪循環。
pass 語句
def a_func():# SyntaxError: unexpected EOF while parsing- pass 語句的意思是“不做任何事”,如果你在需要有語句的地方不寫任何語句,那么解釋器會提示出錯,而 pass 語句就是用來解決這些問題的。
3. 綜合例子
passwdList = ['123', '345', '890'] valid = False count = 3 while count > 0:password = input('enter password:')for item in passwdList:if password == item:valid = Truebreakif not valid:print('invalid input')count -= 1continueelse:break總結
好了,到此為止有關于條件和循環語句的內容就介紹完了。
條件語句 (if, if-else, if-elif-else, nested if) 是為了在不同條件下執行不同操作,而迭代循環 (while, for) 是重復的完成相同操作。
如果有其它編程語言的基礎,今天的內容應該比較容易理解。
好了,就到這里吧!See You!
參考文獻:
- https://www.runoob.com/python3/python3-tutorial.html
- https://www.bilibili.com/video/av4050443
- https://mp.weixin.qq.com/s/DZ589xEbOQ2QLtiq8mP1qQ
相關圖文:
- 資料分享:數學建模資料分享 – 圖論部分
- 資料分享:數學建模資料分享 – 神經網絡部分
- 如何利用 C# 實現 K 最鄰近算法?
- 如何利用 C# 實現 K-D Tree 結構?
- 如何利用 C# + KDTree 實現 K 最鄰近算法?
- 如何利用 C# 對神經網絡模型進行抽象?
- 如何利用 C# 實現神經網絡的感知器模型?
- 如何利用 C# 實現 Delta 學習規則?
- 如何利用 C# 實現 誤差反向傳播 學習規則?
- 如何利用 C# 爬取帶 Token 驗證的網站數據?
- 如何利用 C# 向 Access 數據庫插入大量數據?
- 如何利用 C# + Python 破解貓眼電影的反爬蟲機制?
總結
以上是生活随笔為你收集整理的刻意练习:Python基础 -- Task02. 条件与循环的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 马赫带现象
- 下一篇: AutomateTheBoringStu