版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
分享Python20個練手經(jīng)典案例(附答案)案例1:計算兩個數(shù)的和需求:編寫一個Python程序,接收用戶輸入的兩個數(shù),然后計算并輸出它們的和。代碼實現(xiàn):```pythonnum1=float(input("請輸入第一個數(shù):"))num2=float(input("請輸入第二個數(shù):"))sum_result=num1+num2print(f"兩數(shù)之和為:{sum_result}")```代碼解釋:首先,使用`input()`函數(shù)獲取用戶輸入的兩個數(shù),由于`input()`返回的是字符串類型,所以使用`float()`函數(shù)將其轉(zhuǎn)換為浮點(diǎn)數(shù)。然后將這兩個數(shù)相加,結(jié)果存儲在`sum_result`變量中,最后使用`print()`函數(shù)輸出結(jié)果。案例2:判斷一個數(shù)是否為偶數(shù)需求:編寫一個Python程序,判斷用戶輸入的一個數(shù)是否為偶數(shù)。代碼實現(xiàn):```pythonnum=int(input("請輸入一個整數(shù):"))ifnum%2==0:print(f"{num}是偶數(shù)。")else:print(f"{num}是奇數(shù)。")```代碼解釋:使用`input()`函數(shù)獲取用戶輸入的整數(shù),使用`int()`函數(shù)將其轉(zhuǎn)換為整數(shù)類型。通過取模運(yùn)算符`%`判斷該數(shù)除以2的余數(shù)是否為0,如果為0則是偶數(shù),否則是奇數(shù)。案例3:計算圓的面積需求:編寫一個Python程序,根據(jù)用戶輸入的圓的半徑,計算并輸出圓的面積。代碼實現(xiàn):```pythonimportmathradius=float(input("請輸入圓的半徑:"))area=math.piradius2print(f"圓的面積為:{area}")```代碼解釋:導(dǎo)入`math`模塊,該模塊提供了數(shù)學(xué)相關(guān)的函數(shù)和常量,如`math.pi`表示圓周率。獲取用戶輸入的半徑,使用圓的面積公式`S=πr2`計算面積,最后輸出結(jié)果。案例4:打印九九乘法表需求:編寫一個Python程序,打印出九九乘法表。代碼實現(xiàn):```pythonforiinrange(1,10):forjinrange(1,i+1):print(f"{j}x{i}={ij}",end="\t")print()```代碼解釋:使用兩層嵌套的`for`循環(huán),外層循環(huán)控制行數(shù),從1到9。內(nèi)層循環(huán)控制每行的列數(shù),列數(shù)從1到當(dāng)前行數(shù)。使用`print()`函數(shù)輸出乘法表的每一項,`end="\t"`表示輸出后使用制表符分隔,最后使用`print()`換行。案例5:判斷閏年需求:編寫一個Python程序,判斷用戶輸入的年份是否為閏年。代碼實現(xiàn):```pythonyear=int(input("請輸入一個年份:"))if(year%4==0andyear%100!=0)or(year%400==0):print(f"{year}是閏年。")else:print(f"{year}不是閏年。")```代碼解釋:獲取用戶輸入的年份,使用`int()`函數(shù)將其轉(zhuǎn)換為整數(shù)類型。根據(jù)閏年的判斷規(guī)則:能被4整除但不能被100整除,或者能被400整除的年份是閏年。使用`if-else`語句進(jìn)行判斷并輸出結(jié)果。案例6:反轉(zhuǎn)字符串需求:編寫一個Python程序,將用戶輸入的字符串進(jìn)行反轉(zhuǎn)。代碼實現(xiàn):```pythonstring=input("請輸入一個字符串:")reversed_string=string[::-1]print(f"反轉(zhuǎn)后的字符串為:{reversed_string}")```代碼解釋:獲取用戶輸入的字符串,使用切片操作`[::-1]`對字符串進(jìn)行反轉(zhuǎn),最后輸出反轉(zhuǎn)后的字符串。案例7:計算斐波那契數(shù)列需求:編寫一個Python程序,計算斐波那契數(shù)列的前n項,n由用戶輸入。代碼實現(xiàn):```pythonn=int(input("請輸入要計算的斐波那契數(shù)列的項數(shù):"))ifn<=0:print("輸入的項數(shù)必須為正整數(shù)。")elifn==1:print([0])else:fibonacci=[0,1]whilelen(fibonacci)<n:next_num=fibonacci[-1]+fibonacci[-2]fibonacci.append(next_num)print(f"斐波那契數(shù)列的前{n}項為:{fibonacci}")```代碼解釋:獲取用戶輸入的項數(shù),首先進(jìn)行輸入驗證,如果項數(shù)小于等于0則輸出錯誤信息,如果項數(shù)為1則直接輸出`[0]`。對于項數(shù)大于1的情況,初始化斐波那契數(shù)列的前兩項為`[0,1]`,使用`while`循環(huán)不斷計算下一項并添加到數(shù)列中,直到數(shù)列的長度達(dá)到用戶輸入的項數(shù)。案例8:判斷素數(shù)需求:編寫一個Python程序,判斷用戶輸入的一個數(shù)是否為素數(shù)。代碼實現(xiàn):```pythonnum=int(input("請輸入一個大于1的整數(shù):"))ifnum>1:foriinrange(2,int(num0.5)+1):ifnum%i==0:print(f"{num}不是素數(shù)。")breakelse:print(f"{num}是素數(shù)。")else:print("輸入的數(shù)必須大于1。")```代碼解釋:獲取用戶輸入的整數(shù),首先判斷該數(shù)是否大于1,如果不大于1則輸出錯誤信息。對于大于1的數(shù),使用`for`循環(huán)從2到該數(shù)的平方根進(jìn)行遍歷,如果該數(shù)能被其中任何一個數(shù)整除,則不是素數(shù),使用`break`語句跳出循環(huán);如果循環(huán)正常結(jié)束(即沒有執(zhí)行`break`語句),則該數(shù)是素數(shù)。案例9:統(tǒng)計字符串中字符的出現(xiàn)次數(shù)需求:編寫一個Python程序,統(tǒng)計用戶輸入的字符串中每個字符的出現(xiàn)次數(shù)。代碼實現(xiàn):```pythonstring=input("請輸入一個字符串:")char_count={}forcharinstring:ifcharinchar_count:char_count[char]+=1else:char_count[char]=1forchar,countinchar_count.items():print(f"字符'{char}'出現(xiàn)了{(lán)count}次。")```代碼解釋:獲取用戶輸入的字符串,使用字典`char_count`來存儲每個字符的出現(xiàn)次數(shù)。遍歷字符串中的每個字符,如果字符已經(jīng)在字典中,則將其對應(yīng)的值加1;否則,將該字符作為鍵,值初始化為1。最后遍歷字典,輸出每個字符及其出現(xiàn)次數(shù)。案例10:列表去重需求:編寫一個Python程序,去除列表中的重復(fù)元素。代碼實現(xiàn):```pythonmy_list=[1,2,2,3,4,4,5]unique_list=list(set(my_list))print(f"去重后的列表為:{unique_list}")```代碼解釋:使用`set()`函數(shù)將列表轉(zhuǎn)換為集合,集合的特點(diǎn)是元素唯一,會自動去除重復(fù)元素。然后再使用`list()`函數(shù)將集合轉(zhuǎn)換回列表,最后輸出去重后的列表。案例11:計算階乘需求:編寫一個Python程序,計算用戶輸入的一個數(shù)的階乘。代碼實現(xiàn):```pythonnum=int(input("請輸入一個非負(fù)整數(shù):"))ifnum<0:print("輸入的數(shù)必須為非負(fù)整數(shù)。")else:factorial=1foriinrange(1,num+1):factorial=iprint(f"{num}的階乘為:{factorial}")```代碼解釋:獲取用戶輸入的整數(shù),首先進(jìn)行輸入驗證,如果輸入的數(shù)為負(fù)數(shù)則輸出錯誤信息。對于非負(fù)整數(shù),使用`for`循環(huán)從1到該數(shù)進(jìn)行遍歷,累乘得到階乘結(jié)果。案例12:判斷字符串是否為回文需求:編寫一個Python程序,判斷用戶輸入的字符串是否為回文。代碼實現(xiàn):```pythonstring=input("請輸入一個字符串:")ifstring==string[::-1]:print(f"{string}是回文。")else:print(f"{string}不是回文。")```代碼解釋:獲取用戶輸入的字符串,使用切片操作`[::-1]`對字符串進(jìn)行反轉(zhuǎn),然后比較原字符串和反轉(zhuǎn)后的字符串是否相等,如果相等則是回文,否則不是回文。案例13:合并兩個列表需求:編寫一個Python程序,將兩個列表合并為一個列表。代碼實現(xiàn):```pythonlist1=[1,2,3]list2=[4,5,6]merged_list=list1+list2print(f"合并后的列表為:{merged_list}")```代碼解釋:使用`+`運(yùn)算符將兩個列表進(jìn)行合并,結(jié)果存儲在`merged_list`中,最后輸出合并后的列表。案例14:找出列表中的最大值和最小值需求:編寫一個Python程序,找出列表中的最大值和最小值。代碼實現(xiàn):```pythonmy_list=[3,1,4,1,5,9,2,6,5,3,5]max_num=max(my_list)min_num=min(my_list)print(f"列表中的最大值為:{max_num},最小值為:{min_num}")```代碼解釋:使用`max()`函數(shù)和`min()`函數(shù)分別找出列表中的最大值和最小值,最后輸出結(jié)果。案例15:計算平均值需求:編寫一個Python程序,計算列表中元素的平均值。代碼實現(xiàn):```pythonmy_list=[1,2,3,4,5]average=sum(my_list)/len(my_list)print(f"列表中元素的平均值為:{average}")```代碼解釋:使用`sum()`函數(shù)計算列表中元素的總和,使用`len()`函數(shù)計算列表的長度,然后將總和除以長度得到平均值,最后輸出結(jié)果。案例16:字符串大小寫轉(zhuǎn)換需求:編寫一個Python程序,將用戶輸入的字符串中的大寫字母轉(zhuǎn)換為小寫字母,小寫字母轉(zhuǎn)換為大寫字母。代碼實現(xiàn):```pythonstring=input("請輸入一個字符串:")swapped_string=string.swapcase()print(f"大小寫轉(zhuǎn)換后的字符串為:{swapped_string}")```代碼解釋:使用字符串的`swapcase()`方法將字符串中的大小寫字母進(jìn)行轉(zhuǎn)換,最后輸出轉(zhuǎn)換后的字符串。案例17:判斷兩個字符串是否為變位詞需求:編寫一個Python程序,判斷兩個字符串是否為變位詞(即兩個字符串包含相同的字符,只是字符的順序不同)。代碼實現(xiàn):```pythonstring1=input("請輸入第一個字符串:")string2=input("請輸入第二個字符串:")ifsorted(string1)==sorted(string2):print(f"{string1}和{string2}是變位詞。")else:print(f"{string1}和{string2}不是變位詞。")```代碼解釋:獲取用戶輸入的兩個字符串,使用`sorted()`函數(shù)對字符串進(jìn)行排序,然后比較排序后的結(jié)果是否相等,如果相等則是變位詞,否則不是變位詞。案例18:生成隨機(jī)數(shù)需求:編寫一個Python程序,生成指定范圍內(nèi)的隨機(jī)整數(shù)。代碼實現(xiàn):```pythonimportrandomstart=int(input("請輸入隨機(jī)數(shù)的起始范圍:"))end=int(input("請輸入隨機(jī)數(shù)的結(jié)束范圍:"))random_num=random.randint(start,end)print(f"生成的隨機(jī)數(shù)為:{random_num}")```代碼解釋:導(dǎo)入`random`模塊,該模塊提供了隨機(jī)數(shù)生成的相關(guān)函數(shù)。獲取用戶輸入的起始范圍和結(jié)束范圍,使用`random.randint()`函數(shù)生成指定范圍內(nèi)的隨機(jī)整數(shù),最后輸出結(jié)果。案例19:文件讀寫需求:編寫一個Python程序,將用戶輸入的內(nèi)容寫入文件,然后讀取文件內(nèi)容并輸出。代碼實現(xiàn):```pythoncontent=input("請輸入要寫入文件的內(nèi)容:")withopen('test.txt','w')asfile:file.write(content)withopen('test.txt','r')asfile:read_content=file.read()print(f"從文件中讀取的內(nèi)容為:{read_content}")```代碼解釋:使用`input()`函數(shù)獲取用戶輸入的內(nèi)容,使用`withopen()`語句以寫入模式`'w'`打開文件`test.txt`,將內(nèi)容寫入
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年電力市場輔助服務(wù)交易項目評估報告
- 2026中國船用冷卻系統(tǒng)行業(yè)現(xiàn)狀態(tài)勢與投資趨勢預(yù)測報告
- 2025-2030中國家用激光投影機(jī)市場行情走勢及投資前景預(yù)測研究報告
- 2025至2030中國抗癌藥物市場現(xiàn)狀與投資戰(zhàn)略規(guī)劃研究報告
- 2025-2030中國三氟乙酸酐(TFAA)市場風(fēng)險評估及未來前景展望研究報告
- 基于人工智能的區(qū)域教育均衡發(fā)展:教師流動與配置的政策設(shè)計與實施教學(xué)研究課題報告
- 小學(xué)數(shù)學(xué)在城市綠化面積統(tǒng)計與分析中的應(yīng)用探究教學(xué)研究課題報告
- 骨科并發(fā)癥的早期識別與干預(yù)措施
- 人工智能視角下的小學(xué)跨學(xué)科教學(xué)學(xué)生學(xué)習(xí)障礙診斷與干預(yù)研究教學(xué)研究課題報告
- 企業(yè)內(nèi)部培訓(xùn)個性化手冊
- 醫(yī)院檢查、檢驗結(jié)果互認(rèn)制度
- 2025年醫(yī)院物價科工作總結(jié)及2026年工作計劃
- 2026年高考化學(xué)模擬試卷重點(diǎn)知識題型匯編-原電池與電解池的綜合
- 2025青海省生態(tài)環(huán)保產(chǎn)業(yè)有限公司招聘11人筆試歷年參考題庫附帶答案詳解
- 2025浙江杭州錢塘新區(qū)建設(shè)投資集團(tuán)有限公司招聘5人筆試參考題庫及答案解析
- 2025年天津市普通高中學(xué)業(yè)水平等級性考試思想政治試卷(含答案)
- 2025年昆明市呈貢區(qū)城市投資集團(tuán)有限公司及下屬子公司第二批招聘(11人)備考核心題庫及答案解析
- 2025年中國磁懸浮柔性輸送線行業(yè)市場集中度、競爭格局及投融資動態(tài)分析報告(智研咨詢)
- 腦膜瘤患者出院指導(dǎo)與隨訪
- 學(xué)堂在線 雨課堂 學(xué)堂云 科研倫理與學(xué)術(shù)規(guī)范 期末考試答案
- 2026年武漢大學(xué)專職管理人員和學(xué)生輔導(dǎo)員招聘38人備考題庫必考題
評論
0/150
提交評論