快速進(jìn)修Python指南之控制if-else循環(huán)技巧
簡單介紹
在我們今天的學(xué)習(xí)中,讓我們簡要了解一下Python的控制流程??紤]到我們作為有著豐富Java開發(fā)經(jīng)驗(yàn)的程序員,我們將跳過一些基礎(chǔ)概念,如變量和數(shù)據(jù)類型。如果遇到不熟悉的內(nèi)容,可以隨時(shí)查閱文檔。但在編寫程序或邏輯時(shí),if-else判斷和循環(huán)操作無疑是我們經(jīng)常使用的基本結(jié)構(gòu)。畢竟,我們初步編寫的代碼很多時(shí)候都是在if嵌套中度過的。隨著經(jīng)驗(yàn)的積累,我們才逐漸開始考慮如何將設(shè)計(jì)模式融入代碼中進(jìn)行優(yōu)化。循環(huán)也是同樣如此,我們的取值邏輯涉及到分頁批量處理,遍歷是不可或缺的。
基礎(chǔ)
首先,讓我們深入了解一下Python的寫法。在Python中,縮進(jìn)是至關(guān)重要的,這與我們編寫YAML文件時(shí)的邏輯非常相似。在Python中,同一層邏輯保持相同的縮進(jìn),子邏輯則進(jìn)一步縮進(jìn),而換邏輯則從新的一行從頭開始。
在編程中,我們經(jīng)常使用打印語句來進(jìn)行調(diào)試和輸出信息。不同于Java中的println和print,Python中只有一個(gè)print函數(shù)。然而,它具有一個(gè)默認(rèn)的第二個(gè)參數(shù)end,你可以使用類似這樣的方式進(jìn)行打印:print(‘test’, end=‘\t’)。這對于控制輸出的結(jié)尾非常有用。在函數(shù)調(diào)用方面,Python允許傳遞默認(rèn)值,這使得函數(shù)調(diào)用時(shí)不像Java那樣必須提供所有參數(shù)。
這些是Python中一些基礎(chǔ)的語法和習(xí)慣,接下來我們將深入探討更多關(guān)于if判斷和循環(huán)的內(nèi)容,以及如何在Python中靈活運(yùn)用這些概念。
if判斷
在Python中,if判斷的靈活性給我們帶來了很多便利。特別是在縮進(jìn)寫法上,省略了冗長的括號,使得代碼更加清晰。不僅如此,Python還提供了elif來簡化多個(gè)條件的判斷,讓你的鍵盤少敲兩次,看起來更簡潔。下面,讓我們通過一個(gè)例子來深入了解:
# 例子:判斷一個(gè)數(shù)字的正負(fù)和奇偶性 num = int(input("請輸入一個(gè)整數(shù):")) if num > 0: print("這是一個(gè)正數(shù)。") elif num < 0: print("這是一個(gè)負(fù)數(shù)。") else: print("這是零。") if num % 2 == 0: print("這是一個(gè)偶數(shù)。") else: print("這是一個(gè)奇數(shù)。")
了解了Python中的if判斷寫法后,讓我們研究一下在業(yè)務(wù)邏輯中常用的and和or操作符。這兩個(gè)操作符在Python中的靈活運(yùn)用能夠使代碼更加簡潔,提高可讀性。
在業(yè)務(wù)邏輯中,有些開發(fā)者習(xí)慣在if判斷中直接使用and和or,而不愿意提前聲明變量記錄判斷值。這樣的寫法雖然直接,但也可能讓代碼變得冗長。讓我們通過一個(gè)實(shí)例來展示如何巧妙地運(yùn)用and和or:
# 例子:驗(yàn)證用戶名和密碼是否同時(shí)符合要求 username = input("請輸入用戶名:") password = input("請輸入密碼:") # 判斷用戶名和密碼是否同時(shí)滿足條件 if len(username) > 5 and len(password) >= 8: print("用戶名和密碼符合要求,驗(yàn)證通過。") else: print("用戶名或密碼不符合要求,請重新輸入。")
在這個(gè)例子中,我們通過and操作符將兩個(gè)條件同時(shí)納入判斷,使得驗(yàn)證邏輯更加清晰。
接下來,讓我們看一下取反操作,Python中使用的是not。這與Java中使用感嘆號!的邏輯相似,但更貼近自然語言,提高了可讀性。下面是一個(gè)簡單的取反操作的例子:
# 例子:判斷一個(gè)數(shù)字是否不在指定范圍內(nèi) number = 25 if not (10 <= number <= 20): print("這個(gè)數(shù)字不在10到20之間。") else: print("這個(gè)數(shù)字在指定范圍內(nèi)。")
通過這個(gè)例子,你可以更好地理解在Python中如何使用not進(jìn)行取反操作。
while循環(huán)
在Python中,while循環(huán)不僅與Java一樣有強(qiáng)行退出的break和繼續(xù)執(zhí)行的continue關(guān)鍵字,而且有一個(gè)獨(dú)特的特性,即在循環(huán)正常結(jié)束后可以使用else塊,前提是循環(huán)沒有被break中斷。這個(gè)特性使得Python中的while循環(huán)更加靈活,可以在循環(huán)結(jié)束后執(zhí)行特定的業(yè)務(wù)邏輯。
讓我們通過一個(gè)例子來深入了解:
# 例子:利用while循環(huán)計(jì)算數(shù)字的階乘,并在循環(huán)結(jié)束后輸出結(jié)果 num = int(input("請輸入一個(gè)正整數(shù):")) factorial = 1 count = 1 while count <= num: factorial *= count count += 1 else: print(f"{num}的階乘是:{factorial}") print("循環(huán)正常結(jié)束,執(zhí)行了else塊中的業(yè)務(wù)邏輯。")
在這個(gè)例子中,循環(huán)通過while count <= num條件進(jìn)行控制,當(dāng)循環(huán)正常結(jié)束時(shí),執(zhí)行else塊中的代碼。這種結(jié)構(gòu)在Java中是不常見的,但在Python中卻是一種很有用的模式。
for循環(huán)
與while循環(huán)類似,for循環(huán)在Python中也有強(qiáng)行退出的break和繼續(xù)執(zhí)行的continue關(guān)鍵字。下面是一個(gè)使用for循環(huán)的例子:
# 例子:遍歷列表并輸出元素的平方,并在循環(huán)結(jié)束后輸出提示信息 numbers = [1, 2, 3, 4, 5] for num in numbers: square = num ** 2 print(f"{num}的平方是:{square}") else: print("for循環(huán)正常結(jié)束,執(zhí)行了else塊中的業(yè)務(wù)邏輯。")
在這個(gè)例子中,我們使用for循環(huán)遍歷列表numbers,并計(jì)算每個(gè)元素的平方并輸出。同樣地,循環(huán)正常結(jié)束后,執(zhí)行了else塊中的代碼。
總結(jié)
在今天的學(xué)習(xí)中,我們簡要了解了Python的控制流程,特別是if-else判斷和循環(huán)操作。作為有著Java開發(fā)經(jīng)驗(yàn)的程序員,我們跳過了一些基礎(chǔ)概念,著重探討if判斷和循環(huán)的靈活運(yùn)用。Python的縮進(jìn)寫法和與Java的一些語法區(qū)別都是需要注意的地方。在編寫程序時(shí),if嵌套和循環(huán)是基礎(chǔ)結(jié)構(gòu),而設(shè)計(jì)模式的融入和循環(huán)的靈活運(yùn)用則是經(jīng)驗(yàn)積累后的優(yōu)化方向。在學(xué)習(xí)中,我發(fā)現(xiàn)Python的語法簡潔,控制流程更為靈活,使得編寫清晰可讀的代碼變得更加容易。
以上就是Java開發(fā)者快速進(jìn)修Python指南之控制if-else循環(huán)技巧的詳細(xì)內(nèi)容,更多關(guān)于Python控制if-else循環(huán)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python開發(fā)中爬蟲使用代理proxy抓取網(wǎng)頁的方法示例
這篇文章主要介紹了Python開發(fā)中爬蟲使用代理proxy抓取網(wǎng)頁的方法,結(jié)合具體實(shí)例形式分析了urllib模塊代理與requests模塊代理兩種實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-09-09基于Python開發(fā)PDF轉(zhuǎn)PNG的可視化工具
在數(shù)字文檔處理領(lǐng)域,PDF到圖像格式的轉(zhuǎn)換是常見需求,本文介紹如何利用Python的PyMuPDF庫和Tkinter框架開發(fā)一個(gè)帶圖形界面的PDF轉(zhuǎn)PNG工具,需要的可以參考下2025-03-03如何將DataFrame數(shù)據(jù)寫入csv文件及讀取
在Python中進(jìn)行數(shù)據(jù)處理時(shí),經(jīng)常會用到CSV文件的讀寫操作,當(dāng)需要將list數(shù)據(jù)保存到CSV文件時(shí),可以使用內(nèi)置的csv模塊,若data是一個(gè)list,saveData函數(shù)能夠?qū)ist中每個(gè)元素存儲在CSV文件的一行,但需要注意的是,默認(rèn)情況下讀取出的CSV數(shù)據(jù)類型為str2024-09-09JupyterNotebook設(shè)置Python環(huán)境的方法步驟
這篇文章主要介紹了JupyterNotebook設(shè)置Python環(huán)境的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12使用python對excle和json互相轉(zhuǎn)換的示例
今天小編就為大家分享一篇使用python對excle和json互相轉(zhuǎn)換的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10