日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

刻意练习:Python基础 -- Task02. 条件与循环

發布時間:2023/12/16 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 刻意练习: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 實現多重條件判斷。
if 2 > 1 and not 2 > 3:print('Correct Judgement!')# Correct Judgement!

else 語句

if expression:expr_true_suite elseexpr_false_suite
  • Python 提供與 if 搭配使用的 else,如果 if 語句的條件表達式結果布爾值為假,那么程序將執行 else 語句后的代碼。
temp = input("不妨猜一下小哥哥現在心里想的是那個數字:") guess = int(temp) if guess == 8:print("你是小哥哥心里的蛔蟲嗎?")print("哼,猜對也沒有獎勵!") else:print("猜錯了,小哥哥現在心里想的是8!") print("游戲結束,不玩兒啦!")
  • 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,用來檢查多個表達式是否為真,并在為真時執行特定代碼塊中的代碼。
temp = input('請輸入成績:') source = int(temp) if 100 >= source >= 90:print('A') elif 90 > source >= 80:print('B') elif 80 > source >= 60:print('C') elif 60 > source >= 0:print('D') else:print('輸入錯誤!')

assert 關鍵詞

  • assert這個關鍵詞我們稱之為“斷言”,當這個關鍵詞后邊的條件為 False 時,程序自動崩潰并拋出AssertionError的異常。
my_list = ['lsgogroup'] my_list.pop(0) assert len(my_list) > 0# AssertionError
  • 在進行單元測試時,可以用來在程序中置入檢查點,只有條件為 True 才能讓程序正常工作。
assert 3 > 7# AssertionError

2. 循環語句

while 循環

while expression:suite_to_repeat
  • while循環的suite_to_repeat子句會一直循環執行,直到expression值為布爾假
count = 0 while count < 3:temp = input("不妨猜一下小哥哥現在心里想的是那個數字:")guess = int(temp)if guess > 8:print("大了,大了")else:if guess == 8:print("你是小哥哥心里的蛔蟲嗎?")print("哼,猜對也沒有獎勵!")count = 3else:print("小了,小了")count = count + 1 print("游戲結束,不玩兒啦!")

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 # 9

enumerate()函數

enumerate(sequence, [start=0])
  • sequence – 一個序列、迭代器或其他支持迭代對象。
  • start – 下標起始位置。
  • 返回 enumerate(枚舉) 對象
seasons = ['Spring', 'Summer', 'Fall', 'Winter'] lst = list(enumerate(seasons)) print(lst) # [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')] lst = list(enumerate(seasons, start=1)) # 下標從 1 開始 print(lst) # [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

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語句可以跳出當前所在層的循環。
import random secret = random.randint(1, 10) #[1,10]之間的隨機數while True:temp = input("不妨猜一下小哥哥現在心里想的是那個數字:")guess = int(temp)if guess > secret:print("大了,大了")else:if guess == secret:print("你是小哥哥心里的蛔蟲嗎?")print("哼,猜對也沒有獎勵!")breakelse:print("小了,小了") print("游戲結束,不玩兒啦!")

continue 語句

  • continue終止本輪循環并開始下一輪循環。
for i in range(10):if i % 2 != 0:print(i)continuei += 2print(i)# 2 # 1 # 4 # 3 # 6 # 5 # 8 # 7 # 10 # 9

pass 語句

def a_func():# SyntaxError: unexpected EOF while parsing
  • pass 語句的意思是“不做任何事”,如果你在需要有語句的地方不寫任何語句,那么解釋器會提示出錯,而 pass 語句就是用來解決這些問題的。
def a_func():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. 条件与循环的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。