大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)(Python版) 課后習(xí)題答案_第1頁
大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)(Python版) 課后習(xí)題答案_第2頁
大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)(Python版) 課后習(xí)題答案_第3頁
大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)(Python版) 課后習(xí)題答案_第4頁
大數(shù)據(jù)技術(shù)應(yīng)用基礎(chǔ)(Python版) 課后習(xí)題答案_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

精進不輟答案項目一:1.判斷題(1)大數(shù)據(jù)指的是數(shù)據(jù)量非常龐大的數(shù)據(jù)集。(√)(2)大數(shù)據(jù)的8V特征包括體積(Volume)、速度(Velocity)、多樣性(Variety)、價值(Value)、準確性(Veracity)、可見性(Visibility)、復(fù)雜性(Complexity)和可變性(Volatility)。(√)(3)結(jié)構(gòu)化數(shù)據(jù)是指可以用一維表結(jié)構(gòu)來表達的數(shù)據(jù)。(×)(4)非結(jié)構(gòu)化數(shù)據(jù)是指沒有明確結(jié)構(gòu)的數(shù)據(jù),例如圖像和視頻。(√)(5)半結(jié)構(gòu)化數(shù)據(jù)是指具有一定結(jié)構(gòu)但又不完全結(jié)構(gòu)化的數(shù)據(jù),如XML文檔。(√)(6)數(shù)據(jù)采集存儲是大數(shù)據(jù)流程的第一步。(√)(7)數(shù)據(jù)預(yù)處理是為了清洗和轉(zhuǎn)換數(shù)據(jù),以便于進一步分析。(√)(8)數(shù)據(jù)分析與挖掘是從數(shù)據(jù)中提取有價值的信息和知識的過程。(√)(9)可視化呈現(xiàn)是將數(shù)據(jù)分析的結(jié)果以圖表等形式展現(xiàn)給用戶。(√)(10)分布式數(shù)據(jù)處理技術(shù)是處理大規(guī)模數(shù)據(jù)集的一種關(guān)鍵技術(shù)。(√)(11)SQL(StructuredQueryLanguage)是一種用于管理和查詢結(jié)構(gòu)化數(shù)據(jù)的標準化語言。(√)(12)Python是一種廣泛應(yīng)用于數(shù)據(jù)科學(xué)領(lǐng)域的對象化編程語言。(√)(13)數(shù)據(jù)挖掘方法包括聚類、分類、回歸等多種算法。(√)(14)機器學(xué)習(xí)算法可以自動改進預(yù)測模型的準確性。(√)(15)統(tǒng)計分析方法主要用于探索數(shù)據(jù)之間的關(guān)系和趨勢。(√)2.選擇題(1)大數(shù)據(jù)的哪個特征描述了數(shù)據(jù)的增長速度?(B)A.體積(Volume)B.速度(Velocity)C.多樣性(Variety)D.價值(Value)(2)下列哪種數(shù)據(jù)類型屬于結(jié)構(gòu)化數(shù)據(jù)?(D)A.文本文件B.圖像C.視頻D.Excel表格(3)在大數(shù)據(jù)流程中,哪個步驟負責(zé)清洗和格式化數(shù)據(jù)?(B)A.數(shù)據(jù)采集存儲B.數(shù)據(jù)預(yù)處理C.數(shù)據(jù)分析與挖掘D.可視化呈現(xiàn)(4)下列哪個工具不屬于分布式數(shù)據(jù)處理技術(shù)?(C)A.HadoopB.SparkC.MySQLD.MapReduce(5)SQL主要用于什么類型的數(shù)據(jù)?(A)A.結(jié)構(gòu)化數(shù)據(jù)B.非結(jié)構(gòu)化數(shù)據(jù)C.半結(jié)構(gòu)化數(shù)據(jù)D.以上都可以(6)Python在數(shù)據(jù)科學(xué)領(lǐng)域的主要應(yīng)用不包括?(D)A.數(shù)據(jù)清洗B.數(shù)據(jù)可視化C.機器學(xué)習(xí)D.游戲開發(fā)(7)下列哪種數(shù)據(jù)類型屬于非結(jié)構(gòu)化數(shù)據(jù)?(D)A.HTML文檔B.JSON文件C.CSV文件D.PDF文檔(8)在大數(shù)據(jù)流程中,哪一步驟負責(zé)從數(shù)據(jù)中提取模式和趨勢?(C)A.數(shù)據(jù)采集存儲B.數(shù)據(jù)預(yù)處理C.數(shù)據(jù)分析與挖掘D.可視化呈現(xiàn)(9)下列哪個算法不屬于數(shù)據(jù)挖掘方法?(D)A.決策樹B.Kmeans聚類C.線性回歸D.RSA加密(10)機器學(xué)習(xí)算法的一個重要組成部分是什么?(B)A.數(shù)據(jù)采集B.特征工程C.可視化D.數(shù)據(jù)清洗(11)統(tǒng)計分析方法主要用于?(C)A.數(shù)據(jù)采集B.數(shù)據(jù)預(yù)處理C.探索數(shù)據(jù)之間的關(guān)系D.可視化呈現(xiàn)(12)下列哪個工具不是用于數(shù)據(jù)可視化的?(C)A.MatplotlibB.SeabornC.PandasD.Plotly(13)在大數(shù)據(jù)處理中,MapReduce是用來?(C)A.存儲數(shù)據(jù)B.清洗數(shù)據(jù)C.并行處理數(shù)據(jù)D.可視化數(shù)據(jù)(14)下列哪個是半結(jié)構(gòu)化數(shù)據(jù)的例子?(C)A.Word文檔B.Excel表格C.XML文檔D.PNG圖像(15)Python的哪種特性使其非常適合用于數(shù)據(jù)科學(xué)?(D)A.高性能計算B.易于學(xué)習(xí)C.強大的庫支持D.以上都是3.操作題在官網(wǎng)下載并安裝Python及PyCharm,創(chuàng)建Pycharm文件輸出指定內(nèi)容。1.打開Python官網(wǎng)(/)下載頁面,選擇最新版本Python3.12.1(64位)下載并按步驟完成軟件安裝。注意Python3.9以上的版本不能在Windows7或更早的版本上使用。本版本3.12需要在Win10及以上版本使用,此外,還應(yīng)根據(jù)電腦操作系統(tǒng)是32位或64位選擇相應(yīng)軟件下載。2.在PyCharm官網(wǎng)(/pycharm/download),選擇需要安裝的操作系統(tǒng)類型,下載PyCharm安裝包并安裝。3.創(chuàng)建文件“Python學(xué)習(xí)箴言”,輸出:“知之愈明,則行之愈篤;行之愈篤,則知之益明”。1.安裝視頻2.安裝視頻3.相關(guān)視頻:代碼:print('知之愈明,則行之愈篤;行之愈篤,則知之益明')項目二:1.判斷題(1)Python中可以使用關(guān)鍵字作為變量名。(×)(2)變量名可以以數(shù)字開頭。(×)(3)Python標識符不區(qū)分大小寫。(×)(4)find()方法返回-1說明子串在指定的字符串中。(√)(5)strip()方法默認會刪除字符串頭、尾的空格。(√)(6)Python中,代碼塊的縮進必須使用Tab鍵,不能使用空格。(×)(7)if是Python中的保留字,不能用作變量名。(√)(8)變量名3variable是合法的Python變量名。(×)(9)在Python中,整數(shù)和浮點數(shù)可以直接進行算術(shù)運算,無需轉(zhuǎn)換。(√)(10)字符串切片時,索引值可以是負數(shù),表示從字符串末尾開始計數(shù)。(√)(11)“Hello\nWorld”字符串中包含兩個換行符。(×)(12)Python中的type()函數(shù)用于將數(shù)據(jù)類型轉(zhuǎn)換為其他類型。(×)(13)運算符的優(yōu)先級順序是固定的,不可以改變。(√)(14)print()函數(shù)不能用于輸出多個變量,每次只能輸出一個。(×)(15)input()函數(shù)接收的輸入總是字符串類型,即使輸入的是數(shù)字。(√)2.選擇題(1)Python中使用(A)符號表示單行注釋。A.#B./C.//D.<!---->(2)下列選項中,不屬于Python關(guān)鍵字的是(A)。A.nameB.ifC.isD.and(3)下列(C)是“5or6”的運算結(jié)果。A.0B.1C.5D.6(4)Python中使用(B)可組成轉(zhuǎn)義字符。A./B.\C.$D.%(5)Python賦值,當a=10時,運行a+=10后,a的結(jié)果是(B)。A.11B.20C.22D.12(6)Python中用于代碼塊縮進的正確單位是?(C)A.Tab鍵B.空格(任意數(shù)量)C.兩者都可以D.兩者都不可以(7)下列哪個不是Python的保留字?(D)A.classB.forC.lambdaD.variable(8)在Python中,3.14屬于哪種數(shù)據(jù)類型?(B)A.IntB.floatC.strD.bool(9)字符串'Hello,world!'[1:5]的結(jié)果是?(A)A.'ello'B.'ello,'C.'ello,'D.'ello,world!'(10)字符串中的轉(zhuǎn)義字符\n表示什么?(A)A.換行B.制表符C.回車D.反斜杠(11)將字符串“123”轉(zhuǎn)換為整數(shù),應(yīng)使用哪個函數(shù)?(B)A.str()B.int()C.float()D.eval()(12)運算符//在Python中表示什么運算?(C)A.冪運算B.取模C.整除D.乘法(13)下列哪個是邏輯運算符?(C)A.+B.==C.andD.=(14)print(f"Hello,{name}!")中的f前綴表示什么?(A)A.格式化字符串B.文件對象C.浮點數(shù)D.函數(shù)定義(15)在Python中,轉(zhuǎn)義字符\t用于表示什么?(B)A.換行B.制表符(Tab)C.回車D.反斜杠3.操作題(1)編寫一個程序,幫助出納小張計算庫存現(xiàn)金總額。程序要詢問以下問題:“有多少張100元?”,“有多少張50元?”,“有多少張20元?”,“有多少張10元?”讓程序輸出這些現(xiàn)金的總額,保留整數(shù)。參考代碼:#人機交互輸入每種面值人民幣的張數(shù)num_100元=eval(input('請輸入100元人民幣的張數(shù):'))num_50元=eval(input('請輸入50元人民幣的張數(shù):'))num_20元=eval(input('請輸入20元人民幣的張數(shù):'))num_10元=eval(input('請輸入10元人民幣的張數(shù):'))total_amount=int(100*num_100元+50*num_50元+20*num_20元+10*num_10元)print(f"現(xiàn)金總額為:{total_amount}元")(2)一家制造高科技醫(yī)療設(shè)備的公司,正在為下一季度生產(chǎn)的一款新型醫(yī)療掃描儀制定成本預(yù)算。這款掃描儀的生產(chǎn)涉及多個階段,包括原材料采購、精密部件組裝、軟件集成、質(zhì)量檢測以及市場推廣準備。由于供應(yīng)鏈的不確定性和技術(shù)復(fù)雜性,需要進行詳細的成本分析,并考慮不同因素變化對總成本的影響。相關(guān)數(shù)據(jù)如下:直接材料成本。核心傳感器:每個1500美元(從國外進口,需考慮關(guān)稅和運輸成本)。電路板:每個300美元(國內(nèi)采購,但受原材料價格波動影響)。其他組件(如外殼、連接線):合計每個200美元。直接人工成本。組裝工人:每臺掃描儀需要兩名高級技師和一名助手,平均組裝時間為10小時,每小時工資分別為80美元、60美元和40美元。軟件集成工程師:每臺掃描儀的軟件集成需要2小時,工程師時薪為150美元。制造費用。設(shè)備折舊:每臺掃描儀分攤的制造設(shè)備折舊費用為50美元。工廠運營費用(電力、維護等):按銷售額的2%估算,但此處為簡化計算,假設(shè)為每臺100美元的固定費用。質(zhì)量檢測費用。每臺掃描儀需要進行嚴格的質(zhì)量檢測,費用為200美元。市場推廣準備費用。宣傳材料、展會費用等,按銷售額的3%估算,此處簡化為每臺掃描儀分攤50美元。敏感性分析。假設(shè)原材料價格上漲10%,分析對總成本的影響。假設(shè)生產(chǎn)效率提高(組裝時間減少10%),分析對總成本的影響。請運用Python定義直接材料成本、直接人工成本、制造費用、質(zhì)量檢測費用和市場推廣準備費用,計算總成本,進行敏感性分析(原材料價格上漲10%)、生產(chǎn)效率提高(組裝時間減少10%)參考代碼:#注釋:定義直接材料成本material_cost_sensor=1500#核心傳感器成本material_cost_board=300#電路板成本material_cost_other=200#其他組件成本#注釋:計算總直接材料成本total_material_cost=material_cost_sensor+material_cost_board+material_cost_other#注釋:定義直接人工成本assembly_hours=10#組裝時間(小時)tech_hourly_rate=80#高級技師時薪assistant_hourly_rate=60#助手時薪(注意這里更正為60,而不是40)software_integration_hours=2#軟件集成時間(小時)software_engineer_hourly_rate=150#軟件工程師時薪#注釋:計算總直接人工成本total_labor_cost=(tech_hourly_rate+assistant_hourly_rate)*assembly_hours+software_engineer_hourly_rate*software_integration_hours#注釋:定義制造費用、質(zhì)量檢測費用和市場推廣準備費用manufacturing_overhead=50#設(shè)備折舊等費用factory_operating_cost=100#工廠運營費用quality_control_cost=200#質(zhì)量檢測費用marketing_prep_cost=50#市場推廣準備費用#注釋:計算總成本(不包括敏感性分析)total_cost=total_material_cost+total_labor_cost+manufacturing_overhead+factory_operating_cost+quality_control_cost+marketing_prep_cost#注釋:格式化輸出基本成本print("每臺掃描儀的基本成本為:{:.2f}美元".format(total_cost))#注釋:敏感性分析-原材料價格上漲10%material_cost_increase=0.10increased_material_cost=total_material_cost*(1+material_cost_increase)total_cost_with_material_increase=total_cost-total_material_cost+increased_material_costprint("原材料價格上漲10%后,每臺掃描儀的成本為:{:.2f}美元".format(total_cost_with_material_increase))#注釋:敏感性分析-生產(chǎn)效率提高(組裝時間減少10%)efficiency_increase=0.10reduced_assembly_hours=assembly_hours*(1-efficiency_increase)reduced_labor_cost=(tech_hourly_rate+assistant_hourly_rate)*reduced_assembly_hours+software_engineer_hourly_rate*software_integration_hours#更新總成本以反映勞動力成本的減少total_cost_with_efficiency_increase=total_cost-total_labor_cost+reduced_labor_costprint("生產(chǎn)效率提高(組裝時間減少10%)后,每臺掃描儀的成本為:{:.2f}美元".format(total_cost_with_efficiency_increase))運行結(jié)果:每臺掃描儀的基本成本為:4100.00美元原材料價格上漲10%后,每臺掃描儀的成本為:4300.00美元生產(chǎn)效率提高(組裝時間減少10%)后,每臺掃描儀的成本為:3960.00美元項目三:1.判斷題(1)列表只能存儲同一類型的數(shù)據(jù)。(×)(2)元組支持增加、刪除和修改元素的操作。(×)(3)列表的索引從1開始。(×)(4)字典中的鍵唯一。(√)(5)集合中的元素?zé)o序。(√)(6)Python中的列表、元組、集合和字典都是序列結(jié)構(gòu)。(×)(7)列表的索引可以是負數(shù),用于從后向前訪問元素。(√)(8)使用切片操作lst[2:4]可以獲取列表lst中索引為2和4的元素。(×)(9)append方法用于在列表的末尾添加一個元素。(√)(10)元組是不可變的,意味著一旦創(chuàng)建就不能修改其內(nèi)容。(√)(11)字典中的元素是無序的,但在Python3.7及以上版本中,字典會按照插入順序保持元素的順序。(√)(12)popitem方法用于從字典中移除并返回一個(key,value)對,且總是移除字典中的第一個元素。(×)(13)切片操作序列名[start:end:step]用于從序列中提取子序列,其中start、end和step都是可選的。(√)(14)Python中的序列結(jié)構(gòu)包括列表、元組、集合、字典和字符串。(√)(15)clear、remove和pop都是用于從列表中刪除元素的方法,但它們的工作方式各不相同。(√)2.選擇題(1)下列方法中,可以對列表元素排序的是(A)。A.sort()B.reverse()C.max()D.list()(2)閱讀下面的程序,其運行結(jié)果為(A)li_one=[2,1,5,6]print(sorted(li_one[:2]))A.[1,2]B.[2,1]C.[1,2,5,6]D.[6,5,2,1](3)下列選項中,默認刪除列表最后一個元素的是(C)。A.delB.remove()C.pop()D.extend()(4)閱讀下面程序,其輸出結(jié)果是(A)。lan_info={'01':'Python','02':'Excel','03':'PowerBI'}lan_info.update({'03':'PHP'})print(lan_info)A.{'01':'Python','02':'Excel','03':'PHP'}B.{'01':'Python','02':'Excel','03':'PowerBI'}C.{'03':'PHP','01':'Python',02':'Java'}D.{'01':'Python','02':'Java'}(5)下面程序的運行結(jié)果是(C)set_01={'a','c','b','a'}set_0(1)add('d')print(len(set_01))A.5B.3C.4D.2(6)在Python中,以下哪個不是序列結(jié)構(gòu)?(B)A.列表B.字典C.元組D.字符串(7)Python中列表的正向遞增索引取值范圍描述正確的是?(C)A.[0,N]B.[1,N]C.[0,N-1]D.[1,N-1](8)使用切片操作獲取列表lst=[1,2,3,4,5]中索引2到4(不包括4)的元素,正確的語法是?(A)A.lst[2:4]B.lst[2:3]C.lst[2:5]D.lst[3:4](9)下列哪個方法不能用于向列表中添加元素?(C)A.AppendB.insertC.sortD.extend(10)創(chuàng)建一個元組(1,2,3)的正確方式是?(B)tuple(1,2,3)B.(1,2,3)C.t=tuple[1,2,3]D.t=(123)(11)字典中用于獲取鍵對應(yīng)值的正確方法是?(C)A.dict.keys()B.dict.values()C.dict.get(key)D.dict.items()(12)下列哪個不是集合的常見操作方法?(C)A.addB.removeC.appendD.clear(13)使用del語句刪除列表中的元素時,需要指定?(A)A.元素的索引B.元素的值C.元素的類型和索引D.元素的類型和值(14)創(chuàng)建字典{'name':'John','age':30}的另一種方式是?(A)A.dict({'name':'John','age':30})B.dict[['name','John'],['age',30]]C.{'name':'John','age':30}D.dict(name='John',age=30)(15)在切片操作中,如果省略step參數(shù),則默認步長為?(B)A.0B.1C.-1D.23.操作題(1)給定字典dict1={"公司名稱":'沈陽市偉業(yè)科技有限公司',"成立時間":'2019年5月',"資產(chǎn)總額":5000000},請利用Python字典所學(xué)知識,完成對字典"公司名稱"、"成立時間"、"資產(chǎn)總額"對應(yīng)的值的索引后,修改"資產(chǎn)總額"的數(shù)值為3000000,增加"員工數(shù)量"120人到字典后再做刪除處理。參考代碼:#初始化字典dict1={"公司名稱":'沈陽市偉業(yè)科技有限公司',"成立時間":'2019年5月',"資產(chǎn)總額":5000000}#索引(訪問)字典中的值company_name=dict1["公司名稱"]establishment_time=dict1["成立時間"]asset_total=dict1["資產(chǎn)總額"]print(f"公司名稱:{company_name},成立時間:{establishment_time},資產(chǎn)總額:{asset_total}")#修改"資產(chǎn)總額"dict1["資產(chǎn)總額"]=3000000#增加"員工數(shù)量"dict1["員工數(shù)量"]=120print(dict1)#刪除"員工數(shù)量"deldict1["員工數(shù)量"]#打印最終的字典print(dict1)(2)公司需要統(tǒng)計某部門所有員工的月度銷售額,并計算月度銷售總額及平均銷售額。要求:假設(shè)有一個包含員工銷售額的列表(例如:[12000,15000,8000,10000,11000])。編寫一個Python程序,計算并輸出月度銷售總額和平均銷售額。參考代碼:#員工月度銷售額列表sales_list=[12000,15000,8000,10000,11000]#計算月度銷售總額total_sales=sum(sales_list)#計算平均銷售額average_sales=total_sales/len(sales_list)#輸出結(jié)果print(f"月度銷售總額為:{total_sales}元")print(f"平均銷售額為:{average_sales:.2f}元")項目四:1.判斷題(1)if-else語句可以處理多個分支條件。(√)(2)if語句不支持嵌套使用。(×)(3)elif可以單獨使用。(×)(4)break語句用于結(jié)束循環(huán)。(√)(5)for循環(huán)只能遍歷字符串。(×)(6)程序的組織結(jié)構(gòu)包括順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。(√)(7)if...else...是雙分支結(jié)構(gòu)。(√)(8)for循環(huán)是Python中唯一的循環(huán)結(jié)構(gòu)。(×)(9)break語句可以用在if結(jié)構(gòu)中。(×)(10)continue語句的作用是退出整個循環(huán)。(×)(11)pass語句在Python中是一個空操作,可以用作占位符。(√)(12)嵌套循環(huán)的層數(shù)沒有限制,但建議不超過三層以提高代碼可讀性。(√)(13)whileTrue:是一個無限循環(huán),需要配合break語句來退出。(√)(14)if...elif...else...結(jié)構(gòu)中的else部分是必須的。(×)(15)for循環(huán)只能遍歷列表。(×)2.選擇題(1)在if語句中進行判斷,產(chǎn)生(C)時會輸出相應(yīng)的結(jié)果。A.0B.1C.布爾值D.以上均不正確(2)循環(huán)中可以用(C)語句來跳出深度循環(huán)。A.passB.continueC.breakD.以上均可以(3)可以使用(B)語句跳出當前循環(huán)的剩余語句,繼續(xù)進行下一輪循環(huán)。A.passB.continueC.breakD.以上均可以(4)在foriinrange(6)語句中,i的取值是(D)。A.[1,2,3,4,5,6]B.[1,2,3,4,5]C.[0,1,2,3,4]D.[0,1,2,3,4,5](5)列表解析式[i+6foriinrange(0,3)]返回的結(jié)果是(C)。A.[1,2,3]B.[0,1,2]C.[6,7,8]D.[7,8,9](6)程序的基本組織結(jié)構(gòu)不包括以下哪一項?(B)A.順序結(jié)構(gòu)B.遞歸結(jié)構(gòu)C.選擇結(jié)構(gòu)D.循環(huán)結(jié)構(gòu)(7)下列哪個是if語句的單分支結(jié)構(gòu)示例?(B)A.ifx>0:B.ifx>0:print(x)C.ifx>0:else:D.ifx>0:elifx<0:(8)在Python中,用于實現(xiàn)多分支選擇的結(jié)構(gòu)是?(C)A.if...else...B.if...elif...C.if...elif...else...D.if...elif...elif...(9)在Python中,如果你想要重復(fù)執(zhí)行一段代碼直到某個條件不再滿足,你會使用哪種循環(huán)結(jié)構(gòu)?(B)A.for循環(huán)B.while循環(huán)C.do...while循環(huán)D.repeat...until循環(huán)(10)break語句在循環(huán)中的作用是?(B)A.跳過當前循環(huán)的剩余部分B.退出整個循環(huán)C.跳過下一次循環(huán)D.暫停循環(huán)(11)continue語句在循環(huán)中的作用是?(B)A.退出整個循環(huán)B.跳過當前循環(huán)的剩余部分,進入下一次循環(huán)C.暫停循環(huán)D.重復(fù)當前循環(huán)(12)下列哪個不是pass語句的用途?(D)A.作為空操作B.作為占位符C.使語法結(jié)構(gòu)完整D.終止循環(huán)(13)在Python中,嵌套循環(huán)建議的最大層數(shù)是多少?(C)A.1B.2C.3D.無限制(14)下列哪個不是for循環(huán)的遍歷對象?(D)A.列表B.字典C.字符串D.布爾值(15)whileTrue:是哪種循環(huán)結(jié)構(gòu)的示例?(B)A.遍歷循環(huán)B.無限循環(huán)C.條件循環(huán)D.遞歸循環(huán)3.操作題(1)編寫一個程序:輸入兩套西裝的價格,計算并輸出兩套西裝的總金額,保留2位小數(shù)。(購買兩套西裝,較便宜的西裝半價)參考代碼:sum=0#定義金額變量p1=float(input("請輸入第一套西裝的價格:"))p2=float(input("請輸入第二套西裝的價格:"))#設(shè)置分支結(jié)構(gòu)計算總金額ifp1<p2:sum=0.5*p1+p2else:sum=p1+0.5*p2print(f'購買兩件西裝應(yīng)支付{sum:.2f}元')(2)假設(shè)你是一家公司的財務(wù),需要根據(jù)員工的銷售額來計算他們的工資。工資計算規(guī)則如下:如果銷售額小于等于5000元,工資為底薪3000元;如果銷售額在5001元到10000元之間(包含10000元),工資為底薪3000元加上銷售額的5%作為提成;如果銷售額超過10000元,工資為底薪3000元加上銷售額的8%作為提成,但提成部分最高不超過5000元。要求:利用流程控制語句編寫一個Python程序,接收員工的銷售額作為輸入,假設(shè)銷售額為8500元,輸出該員工的工資。參考代碼:#示例輸入sales=float(input("請輸入員工的銷售額:"))base_salary=3000ifsales<=5000:salary=base_salaryelif5001<=sales<=10000:commission=(sales-5000)*0.05salary=base_salary+commissionelse:commission=min((sales-5000)*0.08,5000)salary=base_salary+commission#輸出工資print(f"該員工的工資為:{salary}元")運行結(jié)果:請輸入員工的銷售額:8500該員工的工資為:3175.0元項目五:1.判斷題(1)在Python中,函數(shù)的參數(shù)不能有默認值。(×)(2)在Python中,函數(shù)的返回值只能是單個值,不能返回多個值。(×)(3)在Python中,函數(shù)的參數(shù)可以是任意類型。(√)(4)在Python中,局部變量的作用域只限于函數(shù)內(nèi)部。(√)(5)在Python中,全局變量可以在函數(shù)內(nèi)部被重新賦值。(√)(6)函數(shù)定義時必須包含返回值語句。(×)(7)位置參數(shù)和關(guān)鍵字參數(shù)不能同時在函數(shù)調(diào)用時使用。(×)(8)全局變量在函數(shù)內(nèi)部可以被直接修改。(√)(9)lambda函數(shù)只能有一個參數(shù)。(×)(10)在Python中,函數(shù)的默認參數(shù)值在函數(shù)定義時計算一次。(√)(11)函數(shù)定義時,參數(shù)的數(shù)量和類型必須嚴格匹配函數(shù)調(diào)用時的參數(shù)。(×)(12)局部變量在函數(shù)外部不可見。(√)(13)如果函數(shù)沒有返回值,則默認返回None。(√)(14)使用global關(guān)鍵字可以在函數(shù)內(nèi)部修改全局變量的值。(√)(15)*args和**kwargs可以同時在函數(shù)定義中使用,以接受任意數(shù)量和類型的位置參數(shù)和關(guān)鍵字參數(shù)。(√)2.選擇題(1)定義函數(shù)時,函數(shù)體的正確縮進為(C)。A.一個空格B.兩個制表符C.4個空格D.4個制表符(2)可變參數(shù)*args傳入函數(shù)時的存儲方式為(A)。A.元組B.列表C.字典D.數(shù)據(jù)框(3)可變參數(shù)**kwargs傳入函數(shù)時的存儲方式為(B)。A.元組 B.字典C.列表D.數(shù)據(jù)框(4)以下對自定義函數(shù)definterest(money,day=1,interest_rate=0.05)調(diào)用錯誤的是(C)。A.interest(5500)B.interest(5500,3,0.1)C.interest(day=2,5500,0.05)D.interest(5500,interest_rate=0.1,day=7)(5)以下關(guān)于lambda表達式的描述錯誤的是(C)。A.lambda表達式不允許多行B.lambda表達式創(chuàng)建函數(shù)不需要命名C.lambda表達式解釋性良好D.lambda表達式可視為對象(6)函數(shù)的基本定義是?(B)A.將一段代碼放在大括號中B.將實現(xiàn)特定功能的代碼塊封裝并賦予名稱C.簡單的變量賦值D.無需封裝的代碼片段(7)在Python中,以下哪項不是函數(shù)定義時的參數(shù)類型?(D)A.位置參數(shù)B.默認值參數(shù)C.可變參數(shù)D.靜態(tài)參數(shù)(8)函數(shù)調(diào)用時傳遞的參數(shù)稱為?(C)A.局部變量B.全局變量C.實際參數(shù)D.形式參數(shù)(9)使用lambda可以定義什么類型的函數(shù)?(C)A.帶有多個語句的函數(shù)體B.帶有返回值的復(fù)雜函數(shù)C.簡單的、單行的匿名函數(shù)D.遞歸函數(shù)(10)以下哪個參數(shù)類型允許在函數(shù)調(diào)用時不提供值?(B)A.位置參數(shù)B.默認值參數(shù)C.可變參數(shù)D.關(guān)鍵字參數(shù)(11)如何調(diào)用一個名為greet的函數(shù),并傳遞一個名為name的參數(shù)?(A)A.greet(name="John")B.greet(John)C.greetname="John"D.greet("John")(12)哪種參數(shù)允許你傳遞任意數(shù)量的參數(shù)給函數(shù)?(C)A.位置參數(shù)B.默認值參數(shù)C.可變參數(shù)(如*args)D.關(guān)鍵字參數(shù)(如**kwargs)(13)以下哪個不是變量作用域的分類?(C)A.局部變量B.全局變量C.靜態(tài)變量D.嵌套變量(嵌套作用域中的變量)(14)在函數(shù)內(nèi)部定義的變量默認是什么作用域?(B)A.全局作用域B.局部作用域C.類作用域D.靜態(tài)作用域(15)如何定義一個接受任意數(shù)量關(guān)鍵字參數(shù)的函數(shù)?(B)A.deffunc(*args):B.deffunc(**kwargs):C.deffunc(varargs):D.deffunc(arg1,arg2,...):3.操作題(1)設(shè)計一個密碼登錄系統(tǒng),要求當用戶正確輸入用戶名“admin”和密碼“Ha&He2024”時,顯示登錄成功!否則返回“用戶名或密碼錯誤,請重新輸入?!眳⒖即a:deflogin():#預(yù)設(shè)正確的用戶名和密碼correct_username="admin"correct_password="Ha&He2024"whileTrue:#獲取用戶輸入的用戶名和密碼username=input("請輸入用戶名:")password=input("請輸入密碼:")#檢查用戶名和密碼是否正確ifusername==correct_usernameandpassword==correct_password:print("登錄成功!")break#跳出循環(huán),結(jié)束程序else:print("用戶名或密碼錯誤,請重新輸入。")login()(2)假設(shè)你是一家公司的財務(wù),需要根據(jù)員工的銷售額來計算他們的工資。工資計算規(guī)則如下:如果銷售額小于等于5000元,工資為底薪3000元;如果銷售額在5001元到10000元之間(包含10000元),工資為底薪3000元加上銷售額的5%作為提成;如果銷售額超過10000元,工資為底薪3000元加上銷售額的8%作為提成,但提成部分最高不超過5000元。要求:定義一個函數(shù),用來計算工資金額。同時接收員工的銷售額作為輸入,假設(shè)銷售額為12000元,輸出該員工的工資。參考代碼:defcalculate_salary(sales):base_salary=3000ifsales<=5000:salary=base_salaryelif5001<=sales<=10000:commission=(sales-5000)*0.05salary=base_salary+commissionelse:commission=min((sales-5000)*0.08,5000)salary=base_salary+commissionreturnsalary#示例輸入sales=float(input("請輸入員工的銷售額:"))#計算工資salary=calculate_salary(sales)#輸出工資print(f"該員工的工資為:{salary}元")運行結(jié)果:請輸入員工的銷售額:12000該員工的工資為:3560.0元項目六:1.判斷題(1)在Pandas中,使用df.dropna()方法刪除包含缺失值的所有行。(√)(2)在Matplotlib中,plt.bar()函數(shù)用于繪制折線圖。(×)(3)Series是Pandas中的一維數(shù)據(jù)結(jié)構(gòu),類似于一維數(shù)組,但其索引可以是任何不可變類型。(√)(4)使用df.loc[]只能通過索引來選擇DataFrame中的行或列,而不能使用標簽。(×)(5)在繪制柱形圖時,width參數(shù)決定了柱子的寬度。(√)(6)Pandas是一個專門用于數(shù)據(jù)清洗和合并的Python庫。(×)(7)Pandas中的groupby()函數(shù)僅支持按單列進行分組。(×)(8)使用describe()函數(shù)可以快速獲取DataFrame中數(shù)值型數(shù)據(jù)的統(tǒng)計摘要,包括計數(shù)、平均值、標準差、最小值、最大值等。(√)(9)使用groupby()函數(shù)分組后,可以直接對分組結(jié)果應(yīng)用聚合函數(shù),如sum()、mean()等,而無需進一步操作。(√)(10)在Pandas中,isnull()函數(shù)用于檢測DataFrame中的缺失值,并返回與原DataFrame形狀相同的布爾型DataFrame。(√)(11)使用pd.concat()時,可以通過join參數(shù)指定連接方式。(×)(12)在pd.merge()中,how參數(shù)默認為'inner',表示內(nèi)連接。(√)(13)Matplotlib的plt.style.use()可以設(shè)置全局樣式。(√)(14)在Matplotlib中,plt.xlabel()和plt.ylabel()可以設(shè)置坐標軸的標簽。(√)(15)df.loc主要用于基于標簽的選擇,而df.iloc主要用于基于位置的選擇。(√)2.選擇題(1)哪個Pandas方法可以用于篩選出滿足特定條件的行?(C)A.df.filter()B.df.select()C.df.query()D.df.extract()(2)下面哪個方法可以去除數(shù)據(jù)中重復(fù)的行,并保留第一次出現(xiàn)的記錄?(A)A.drop_duplicates()B.remove_duplicates()C.delete_duplicates()D.unique()(3)在Matplotlib中,如何設(shè)置圖表的標題?(A)A.plt.title()B.plt.caption()C.plt.label()D.plt.text()(4)在Pandas中,用于檢查DataFrame是否有缺失值的方法是:(A)A.df.isnull()B.df.null()C.df.missing()D.df.check_null()(5)下列哪個函數(shù)可以用來查看DataFrame的前幾行數(shù)據(jù)?(A)A.df.head()B.df.tail()C.()D.df.describe()(6)在Pandas中,如果你想將兩個DataFrame按照指定列進行合并,應(yīng)該使用哪個函數(shù)?(B)A.groupby()B.merge()C.concat()D.append()(7)假設(shè)你有一個DataFrame,想要查看每列的最大值和最小值,應(yīng)該使用哪個方法?(A)A.describe()B.max()C.min()D.idxmax()和idxmin()(8)在Pandas中,如果你想要將兩個DataFrame沿著列方向合并,并且希望保留所有索引,應(yīng)該設(shè)置concat()函數(shù)的哪個參數(shù)?(B)A.axis=0B.axis=1C.join='inner'D.join='outer'(9)假設(shè)你有一個DataFrame,想要根據(jù)某列的值對數(shù)據(jù)進行排序,應(yīng)該使用哪個方法?(B)A.sort()B.sort_values()C.order()D.sorted()(10)以下哪個函數(shù)用于將DataFrame的索引重置為默認的整數(shù)索引?(A)A.reset_index()B.reindex()C.set_index()D.drop_index()答案:A(11)在Pandas中,如何實現(xiàn)一對一的數(shù)據(jù)合并?(B)A.pd.concat([df1,df2],axis=0)B.pd.merge(df1,df2,on='key')C.pd.join(df1,df2)D.pd.union(df1,df2)(12)如何指定Pandas合并操作中的連接列?(D)A.使用on參數(shù)B.使用left_on和right_on參數(shù)C.使用index參數(shù)D.以上都可以(13)如何按條件篩選DataFrame中的數(shù)據(jù)?(A)A.df[df['column']>value]B.df.where(df['column']>value)C.df.filter(df['column']>value)D.df.select(df['column']>value)(14)如何在Matplotlib中繪制一個簡單的折線圖?(A)A.plt.plot(x,y)B.plt.scatter(x,y)C.plt.bar(x,y)D.plt.hist(x,y)(15)Pandas中,計算DataFrame某一列的平均值應(yīng)該使用哪個方法?(A)A.mean()B.sum()C.std()D.var()3.操作題(1)分類記錄個人一個月的消費支出,如餐飲費用、網(wǎng)絡(luò)購物費、手機費、社交費等,運用matplotlib設(shè)計程序繪制餅圖,并進行個性

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論