![Python編程基礎(chǔ) 習題答案 袁連海 - 第5-8章_第1頁](http://file4.renrendoc.com/view14/M03/19/1C/wKhkGWeh9aGAC2cLAACIuqEkPVM430.jpg)
![Python編程基礎(chǔ) 習題答案 袁連海 - 第5-8章_第2頁](http://file4.renrendoc.com/view14/M03/19/1C/wKhkGWeh9aGAC2cLAACIuqEkPVM4302.jpg)
![Python編程基礎(chǔ) 習題答案 袁連海 - 第5-8章_第3頁](http://file4.renrendoc.com/view14/M03/19/1C/wKhkGWeh9aGAC2cLAACIuqEkPVM4303.jpg)
![Python編程基礎(chǔ) 習題答案 袁連海 - 第5-8章_第4頁](http://file4.renrendoc.com/view14/M03/19/1C/wKhkGWeh9aGAC2cLAACIuqEkPVM4304.jpg)
![Python編程基礎(chǔ) 習題答案 袁連海 - 第5-8章_第5頁](http://file4.renrendoc.com/view14/M03/19/1C/wKhkGWeh9aGAC2cLAACIuqEkPVM4305.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
?PAGE7?附錄各章習題參考答案附錄各章習題參考答案第5章習題參考答案一、判斷題答案:正確(√)正確(√)錯誤(×)正確(√)二、填空題答案:任何不可變互不相同鍵,值1,3{1,3,5}三、選擇題答案:AACCB,C,DDC,DA,B,C,D,GBA四、編程題答案:1.斐波那契數(shù)列:deffibonacci(n):fib_sequence=[0,1]whilelen(fib_sequence)<n:fib_sequence.append(fib_sequence[-1]+fib_sequence[-2])returnfib_sequenceprint(fibonacci(10))2.單詞排序:words=input("請輸入若干個單詞,用空格分隔:").split()words_sorted=sorted(words)print(words_sorted)3.列表增加10:numbers=[1,2,3,4,5]numbers=[x+10forxinnumbers]print(numbers)4.字典值增加5:d={'a':1,'b':2,'c':3}forkeyind:d[key]+=5print(d)5.列表元素乘以2:original_list=[1,2,3,4,5]new_list=[x*2forxinoriginal_list]print(new_list)6.大寫轉(zhuǎn)小寫:s="HelloWorld!"lowercase_s=s.lower()print(lowercase_s)7.列表最大值和最小值:nums=[1,3,5,2,4]max_value=max(nums)min_value=min(nums)print((max_value,min_value))8.列表交替合并:list1=[1,2,3]list2=['a','b','c']merged_list=[xforpairinzip(list1,list2)forxinpair]print(merged_list)9.列表排序:tt=[4,2,5,1,3]print(sorted(tt))print(sorted(tt,reverse=True))10.列表反轉(zhuǎn):tt=[4,2,5,1,3]print(tt[::-1])print(list(reversed(tt)))11.數(shù)字轉(zhuǎn)中文大寫:defnum_to_chinese(num):chinese_num={'0':'零','1':'壹','2':'貳','3':'叁','4':'肆','5':'伍','6':'陸','7':'柒','8':'捌','9':'玖','.':'點'}chinese_str=''forcharinstr(num):chinese_str+=chinese_num[char]returnchinese_strprint(num_to_chinese(1.23))12.隨機生成整數(shù)列表:importrandomrandom_numbers=[random.randint(1,100)for_inrange(10)]print(random_numbers)
第6章習題參考答案一、判斷題答案:正確(√)正確(√)正確(√)錯誤(×)二、填空題答案:openevalxml.etree.ElementTreejson三、選擇題答案:ABDADCAAAA四、編程題答案:1.單詞出現(xiàn)次數(shù)統(tǒng)計:fromcollectionsimportCounterwithopen('filename.txt','r')asfile:text=file.read()words=text.split()word_counts=Counter(words)forword,countinword_counts.most_common():print(word,count)2.存儲和讀取JSON數(shù)據(jù):importjsondata={'key':'value'}withopen('data.json','w')asfile:json.dump(data,file)withopen('data.json','r')asfile:new_data=json.load(file)print(new_data)3.讀取整數(shù)排序輸出:withopen('input.txt','r')asinfile,open('sorted_output.txt','w')asoutfile:sorted_numbers=[]forlineininfile:numbers=list(map(int,line.split()))sorted_numbers.extend(sorted(numbers))fornumberinsorted(sorted_numbers):outfile.write(f"{number}")outfile.write("\n")4.奇數(shù)偶數(shù)分離:odd_numbers=[]even_numbers=[]withopen('input.txt','r')asinfile,open('odd_output.txt','w')asoddfile,open('even_output.txt','w')asevenfile:forlineininfile:numbers=list(map(int,line.split()))oddfile.write(''.join(str(x)forxinnumbersifx%2!=0)+'\n')evenfile.write(''.join(str(x)forxinnumbersifx%2==0)+'\n')5.字符串排序輸出:withopen('input.txt','r')asinfile,open('sorted_output.txt','w')asoutfile:sorted_strings=[]forlineininfile:strings=line.split()sorted_strings.extend(sorted(strings))forstringinsorted_strings:outfile.write(f"{string}")outfile.write("\n")6.打印文件內(nèi)容:withopen('filename.txt','r')asfile:print(file.read())7.保存文件內(nèi)容到新文件:withopen('filename.txt','r')asinfile,open('new_filename.txt','w')asoutfile:outfile.write(infile.read())8.創(chuàng)建并寫入文本文件:withopen('newfile.txt','w')asfile:file.write("這里是一些文本內(nèi)容。")9.計算某一行的長度:withopen('filename.txt','r')asfile:fori,lineinenumerate(file,1):print(f"第{i}行的長度是:{len(line)}")10.反轉(zhuǎn)每行內(nèi)容:withopen('input.txt','r')asinfile,open('reversed_output.txt','w')asoutfile:forlineininfile:outfile.write(''.join(reversed(line))+'\n')11.計算每列平均值:withopen('data.txt','r')asfile:lines=file.readlines()num_lines=len(lines)num_columns=len(lines[0].strip().split(','))totals=[0]*num_columnsforlineinlines:values=line.strip().split(',')fori,valueinenumerate(values):totals[i]+=float(value)averages=[total/num_linesfortotalintotals]print(averages)12.提取CSV文件中的姓名和年齡:importcsvwithopen('users.csv','r')asfile:reader=csv.DictReader(file)forrowinreader:print(f"姓名:{row['name']},年齡:{row['age']}")13.保存用戶信息到新的CSV文件:importcsvdata=[]withopen('users.csv','r')asfile:reader=csv.DictReader(file)forrowinreader:data.append({'name':row['name'],'age':row['age']})withopen('new_users.csv','w',newline='')asfile:writer=csv.DictWriter(file,fieldnames=['name','age'])writer.writeheader()writer.writerows(data)14.讀取二進制文件并轉(zhuǎn)換為十六進制字符串:withopen('binaryfile.bin','rb')asfile:binary_data=file.read()hex_string=binary_data.hex()print(hex_string)15.寫入二進制數(shù)據(jù)到新文件:withopen('binaryfile.bin','rb')asinfile,open('new_binaryfile.bin','wb')asoutfile:binary_data=infile.read()outfile.write(binary_data)第7章習題參考答案一、判斷題答案:正確(√)錯誤(×)正確(√)正確(√)二、填空題答案:defimportintif三、選擇題答案:ACABBADACBDCD四、編程題答案:1.簡單計算器:defcalculator():num1=float(input("請輸入第一個數(shù)字:"))num2=float(input("請輸入第二個數(shù)字:"))operator=input("請輸入操作符(+、-、*、/):")ifoperator=='+':print(f"{num1}+{num2}={num1+num2}")elifoperator=='-':print(f"{num1}-{num2}={num1-num2}")elifoperator=='*':print(f"{num1}*{num2}={num1*num2}")elifoperator=='/':ifnum2!=0:print(f"{num1}/{num2}={num1/num2}")else:print("除數(shù)不能為0")else:print("無效的操作符")calculator()2.簡單日歷:importcalendardefprint_calendar(year,month):cal=calendar.TextCalendar(calendar.SUNDAY)print(cal.formatmonth(year,month))year=int(input("請輸入年份:"))month=int(input("請輸入月份:"))print_calendar(year,month)3.石頭、剪刀、布游戲:importrandomdefrock_paper_scissors():user_choice=int(input("請輸入手勢(1-石頭,2-剪刀,3-布):"))choices=["石頭","剪刀","布"]computer_choice=random.choice(choices)print(f"電腦出的手勢是:{computer_choice}")ifuser_choice==1andcomputer_choice=="布":print("你贏了!")elifuser_choice==2andcomputer_choice=="石頭":print("你贏了!")elifuser_choice==3andcomputer_choice=="剪刀":print("你贏了!")elifuser_choice==1andcomputer_choice=="剪刀":print("你輸了!")elifuser_choice==2andcomputer_choice=="布":print("你輸了!")elifuser_choice==3andcomputer_choice=="石頭":print("你輸了!")else:print("平局!")rock_paper_scissors()4.猜數(shù)字游戲:importrandomdefguess_number():number=random.randint(1,100)whileTrue:try:guess=int(input("猜一個1到100之間的數(shù)字:"))ifguess<number:print("太小了,再試一次。")elifguess>number:print("太大了,再試一次。")else:print("恭喜你,猜對了!")breakexceptValueError:print("請輸入一個有效的整數(shù)。")guess_number()5.簡單文本編輯器:deftext_editor():filename=input("請輸入文件名:")try:withopen(filename,'r')asfile:content=file.read()print("文件內(nèi)容如下:")print(content)add_content=input("請輸入要添加的文本內(nèi)容:")withopen(filename,'a')asfile:file.write(add_content+"\n")print("內(nèi)容已添加并保存。")exceptFileNotFoundError:print(f"文件{filename}未找到。")text_editor()6.簡單電子郵件客戶端:importsmtplibdefsend_email():sender=input("請輸入發(fā)件人地址:")receiver=input("請輸入收件人地址:")subject=input("請輸入郵件主題:")body=input("請輸入郵件正文:")print(f"郵件發(fā)送成功!發(fā)件人:{sender},收件人:{receiver},主題:{subject},正文:{body}")send_email()7.面向?qū)ο缶幊潭鄳B(tài)性示例:classCar:defrun(self):print("汽車正在行駛。")classBYD(Car):defrun(self):print("比亞迪汽車正在行駛。")classCHANGCHENG(Car):defrun(self):print("長城汽車正在行駛。")classPerson:defuse_car(self,car):car.run()person=Person()byd_car=BYD()changcheng_car=CHANGCHENG()person.use_car(byd_car)person.use_car(changcheng_car)第8章習題參考答案一、判斷題答案:正確(√)正確(√)錯誤(×)正確(√)二、填空題答案:ndarrayDataFramelmplot或distplotfigure三、選擇題答案:DDAACABBDD四、編程題答案:1.繪制正12邊形:importturtledefdraw_12_sides():turtle.pensize(2)foriinrange(1,13):#1turtle.fd(40)#2turtle.right(30)#3turtle.done()draw_12_sides()2.輸出實心菱形圖案:foriinrange(1,5):print(''*(4-i)+'*'*(2*i-1))foriinrange(1,5):print(''*i+'*'*(8-2*i))3.繪制柱狀圖:importmatplotlib.pyplotaspltmonth=['Jan','Feb','Mar','Apr','May','Jun']sales=[120,90,150,180,80,110]plt.bar(month,sales)plt.show()4.讀取并打印CSV文件數(shù)據(jù):importcsvfilename='data.csv'withopen(filename,newline='')ascsvfile:reader=csv.reader(csvfile)forrowinreader:print(row)5.創(chuàng)建并保存帶文字的圖像:fromPILimportImage,ImageDraw,ImageFontimg=Image.new('RGB',(300,200),color='white')d=ImageDraw.Draw(img)font=ImageFont.load_default()d.text((50,50),'Hello,world!',fill=(0,0,0),font=font)img.save('hello_world.png')6.生成數(shù)組并計算統(tǒng)計數(shù)據(jù):importnumpyasnpdata=np.random.randint(1,100,100)print("最小值:",np.min(data))print("最大值:",np.max(data))print("平均值:",np.mean(data))print("中位數(shù):",np.median(data))7.讀取Excel、排序并寫入新的Excel:importpandasaspddf=pd.read_excel('data.xlsx')df_sorted=df.sort_values(by=df.columns[0])df_sorted.to_excel('sorted_data.xlsx',index=False)8.繪制正弦曲線并保存:importmatplotlib.pyplotaspltimportnumpyasnpx=np.linspace(0,2*np.pi,100)y=np.sin(x)plt.plot(x,y)plt.savefig('sin_wave.png')plt.show()9.加載Iris數(shù)據(jù)集、KMeans聚類并可視化:fromsklearn.datasetsimportload_irisfromsklearn.clusterimportKMeansimportmatplotlib.pyplotaspltiris=load_iris()kmeans=KMeans(n_clusters=3)kmeans.fit(iris.data)plt.scatter(iris.data[:,2],iris.data[:,3],c=kmeans.labels_)plt.show()10.計算文本文件中單詞出現(xiàn)次數(shù):fromcollectionsimportCounterwithopen('test.txt','r')asfile:text=file.read().lower()words=text.split()word_counts=Counter(words)print(word_counts)11.輸出用戶輸入數(shù)字的平方:num=float(input("請輸入一個數(shù)字:"))print(f"{num}的平方是{num**2}")12.返回字符串反轉(zhuǎn):defreverse_string(s):returns[::-1]input_string="Hello,World!"print(reverse_string(input_string))13.打印1到100之間的所有素數(shù):defis_prime(num):ifnum<2:returnFalseforiinrange(2,int(num**0.5)+1):ifnum%i==0:returnFalsereturnTrueforiinrange(1,101):ifis_prime(i):print(i)14.計算列表平均值:defaverage(lst):returnsum(lst)/len(lst)numbers=[1,2,3,4,5]print(average(numbers))15.計算CSV文件每列平均值:importpandasaspddf=pd.read_csv('data.csv')averages=df.mean()print(averages)16.找出最早的日期:fromdatetimeimportdatetimedates=["2024-06-17","2024-06-16","2024-06-18"]earliest_date=min(dates,key=datetime.strptime)print(earliest_date)17.計算正弦、余弦和正切值:importmathangle=float(input("請輸入一個角度(弧度):"))print(f"正弦值:{math.sin(angle)}")print(f"余弦值:{math.cos(angle)}")print(f"正切值:{math.tan(angle)}")18.生成隨機矩陣并計算轉(zhuǎn)置:importnumpyasnpmatrix=np.random.rand(5,5)print("原始矩陣:")print(matrix)print("轉(zhuǎn)置矩陣:")print(matrix.T)19.繪制折線圖:importmatplotlib.pyplotaspltx=[1,2,3,4,5]y=[2,3,5,7,11]plt.plot(x,y)plt.show()20.計算CSV文件每列唯一值數(shù)量:importpandasaspddf=pd.read_csv('data.csv')unique_counts=df.nunique()print(unique_counts)21.計算股票的平均價格和最高價格:importpanda
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 產(chǎn)權(quán)交易合同意向書
- 個人綜合授信貸款合同范文
- 個人房屋租賃合同樣本范本
- 個人房產(chǎn)轉(zhuǎn)讓合同樣本修訂版
- 中小學(xué)教師工資集體合同范本
- 業(yè)務(wù)員委托合同范本
- 個人小額信貸合同樣本
- 個人設(shè)備租賃標準合同
- 個人車輛保險合同標準模板
- 個人友情借款合同樣本
- 2025年廣西教育出版社有限公司招聘筆試參考題庫含答案解析
- 中醫(yī)膏方臨床應(yīng)用與制備工藝規(guī)范 DB32/T 4870-2024
- JJG(交通) 208-2024 車貨外廓尺寸動態(tài)現(xiàn)場檢測設(shè)備
- 蘇北四市(徐州、宿遷、淮安、連云港)2025屆高三第一次調(diào)研考試(一模)英語試卷(含答案)
- 2025年信息系統(tǒng)集成服務(wù)公司組織架構(gòu)和業(yè)務(wù)流程
- 西藏自治區(qū)拉薩市城關(guān)區(qū)多校2024-2025學(xué)年六年級上學(xué)期期中英語試題
- 胸外科講課全套
- 2023年海南省公務(wù)員錄用考試《行測》真題卷及答案解析
- 公安法制培訓(xùn)
- 中醫(yī)診斷學(xué)八綱辨證課件
- 淺談如何有效提高小學(xué)數(shù)學(xué)教學(xué)質(zhì)量課件
評論
0/150
提交評論