2021年FishC工作室零基礎(chǔ)學(xué)習(xí)python全套課后題_第1頁
2021年FishC工作室零基礎(chǔ)學(xué)習(xí)python全套課后題_第2頁
2021年FishC工作室零基礎(chǔ)學(xué)習(xí)python全套課后題_第3頁
2021年FishC工作室零基礎(chǔ)學(xué)習(xí)python全套課后題_第4頁
2021年FishC工作室零基礎(chǔ)學(xué)習(xí)python全套課后題_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第一節(jié)課0.Python是什么類型語言?Python是腳本語言腳本語言(Scriptinglanguage)是電腦編程語言,因而也能讓開發(fā)者藉以編寫出讓電腦聽命行事程序。以簡樸方式迅速完畢某些復(fù)雜事情普通是創(chuàng)造腳本語言重要原則,基于這項(xiàng)原則,使得腳本語言普通比C語言、C++語言或Java之類系統(tǒng)編程語言要簡樸容易。也讓腳本語言另有某些屬于腳本語言特性:語法和構(gòu)造普通比較簡樸學(xué)習(xí)和使用普通比較簡樸普通以容易修改程序“解釋”作為運(yùn)營方式,而不需要“編譯”程序開發(fā)產(chǎn)能優(yōu)于運(yùn)營性能一種腳本可以使得本來要用鍵盤進(jìn)行互相式操作自動化。一種Shell腳本重要由原本需要在命令行輸入命令構(gòu)成,或在一種文本編輯器中,顧客可以使用腳本來把某些慣用操作組合成一組串行。重要用來書寫這種腳本語言叫做腳本語言。諸多腳本語言事實(shí)上已經(jīng)超過簡樸顧客命令串行指令,還可以編寫更復(fù)雜程序。1.IDLE是什么?IDLE是一種PythonShell,shell意思就是“外殼”,基本上來說,就是一種通過鍵入文本與程序交互途徑!像咱們Windows那個cmd窗口,像Linux那個黑乎乎命令窗口,她們都是shell,運(yùn)用她們,咱們就可以給操作系統(tǒng)下達(dá)命令。同樣,咱們可以運(yùn)用IDLE這個shell與Python進(jìn)行互動。2.print()作用是什么?print()會在輸出窗口中顯示某些文本(在這一講中,輸出窗口就是IDLEshell窗口)。3.Python中表達(dá)乘法符號是什么?Python中乘號是*(星號)。4.為什么>>>print('Ilove'*5)可以正常執(zhí)行,但>>>print('Ilove'+5)卻報(bào)錯?在Python中不能把兩個完全不同東西加在一起,例如說數(shù)字和文本,正是這個因素,>>>print('Ilove'+5)才會報(bào)錯。這就像是在說“五只小甲魚加上蒼井空會是多少?”同樣沒有多大意義,成果也許是五,也許是六,也也許是八!但是乘以一種整數(shù)來翻番就具備一定意義了,前邊例子就是將"Ilove"這個字符串打印五次。5.如果我需要在一種字符串中嵌入一種雙引號,對的做法是?你有兩個選?。嚎梢赃\(yùn)用反斜杠(\)對雙引號轉(zhuǎn)義:\",或者用單引號引起這個字符串。例如:'Il"o"ve'。6.為什么咱們要使用Python3?Python2究竟有什么問題?看起來諸多程序員依然都在使用Python2?的確尚有相稱多程序員在使用Python2,但是Python3才是Python發(fā)展將來,就像XP和WIN7同樣。在《零基本入門學(xué)習(xí)Python》系列教程準(zhǔn)備中,小甲魚發(fā)現(xiàn)Python3中新特性的確很妙,很值得進(jìn)行進(jìn)一步學(xué)習(xí)!你也不用緊張,如果你理解了Python3,Python2代碼閱讀對于你來說主線不成問題!第二節(jié)課0.什么是BIF?BIF就是Built-inFunctions,內(nèi)置函數(shù)。為了以便程序員迅速編寫腳本程序(腳本就是要編程速度快快快?。。。?,Python提供了非常豐富內(nèi)置函數(shù),咱們只需要直接調(diào)用即可,例如print()功能是“打印到屏幕”,input()作用是接受顧客輸入(注:Python3用input()取代了Python2raw_input(),用法如有不懂請看視頻解說)。太多BIF學(xué)但是來怎么辦?看不懂英文闡明怎么辦?Python3資料太少怎么辦?沒事,有了小甲魚,媽媽再也不用緊張我學(xué)習(xí)了!1.用課堂上小甲魚教辦法數(shù)一數(shù)Python3提供了多少個BIF?在Python或IDLE中,輸入dir(__builtins__)可以看到Python提供內(nèi)置辦法列表(注意,builtins先后是兩個下劃線哦)其中小寫就是BIF。如果想詳細(xì)查看某個BIF功能,例如input(),可以在shell中輸入help(input),就會得到這個BIF功能描述。哦,答案應(yīng)當(dāng)是68個,不信你自己數(shù)數(shù)看,你們必定沒有自己完畢作業(yè)就來看答案!哼~T_T2.在Python看來:'FishC'和'fishc'同樣嗎?不同樣,由于Python是一種“敏感小女孩”,因此不要試圖欺騙她,對Python來說,fishc和FishC是完全不同兩個名字,因此編程時(shí)候一定要當(dāng)心。但是Python會協(xié)助解決也許因而浮現(xiàn)問題,例如只有當(dāng)標(biāo)記符已經(jīng)賦值后(還記得嗎,小甲魚在課堂中說過Python變量是不用先聲明)才干在代碼中使用,未賦值標(biāo)記符直接使用會導(dǎo)致運(yùn)營時(shí)錯誤,因此你不久就可以依照經(jīng)驗(yàn)發(fā)現(xiàn)此問題。3.在小甲魚看來,Python中什么是最重要?你贊同嗎?縮進(jìn)!在小甲魚看來,縮進(jìn)是Python靈魂,縮進(jìn)嚴(yán)格規(guī)定使得Python代碼顯得非常精簡并且有層次(小甲魚閱讀過諸多大牛代碼,那個亂......C語言不是有國際亂碼大賽嘛......)。因此在Python里對待縮進(jìn)代碼要十分小心,如果沒有對的地縮進(jìn),代碼所做事情也許和你盼望相去甚遠(yuǎn)(就像C語言里邊括號打錯了位置)。如果在對的位置輸入冒號“:”,IDLE會自動將下一行縮進(jìn)!4.這節(jié)課例子中浮現(xiàn)了“=”和“==”,她們表達(dá)不同含義,你在編程過程中會不小心把“==”誤寫成“=”嗎?有無好辦法可以解決這個問題呢?C語言話,如果if(c==1)寫成if(c=1),程序就完全不按程序員原本目去執(zhí)行,但在Python這里,不好意思,行不通,語法錯誤!Python不容許if條件中賦值,因此ifc=1:會報(bào)錯!小甲魚覺得這種做法可以非常有效防止程序員由于打炮、熬夜等問題導(dǎo)致粗心BUG,并且此類BUG殺傷力都巨大!5.你據(jù)說過“拼接”這個詞嗎?在某些編程語言,咱們可以將兩個字符串“相加”在一起,如:'I'+'Love'+'FishC'會得到'ILoveFishC',在Python里,這種做法叫做拼接字符串。0.編寫程序:hello.py,規(guī)定顧客輸入姓名并打印“你好,姓名!”1.name=input("請輸入您姓名:")2.print('你好,'+name+'!')復(fù)制代碼1.編寫程序:calc.py規(guī)定顧客輸入1到100之間數(shù)字并判斷,輸入符合規(guī)定打印“你妹好美麗”,不符合規(guī)定則打印“你大爺好丑”1.temp=input("請輸入1到100之間數(shù)字:")2.num=int(temp)3.if1<=num<=100:4.print('你妹好美麗^_^')5.else:6.print('你大爺好丑T_T')復(fù)制代碼第三課5.如果非要在原始字符串結(jié)尾輸入反斜杠,可以如何靈活解決?1.>>>str=r'C:\ProgramFiles\FishC\Good''\\'復(fù)制代碼第四課測試題:0.請問如下代碼會打印多少次“我愛魚C!”1.while'C':2.print('我愛魚C!')復(fù)制代碼1.請問如下代碼會打印多少次“我愛魚C!”1.i=102.whilei:3.print('我愛魚C!')4.i=i-1復(fù)制代碼2.請寫出與10<cost<50等價(jià)表達(dá)式3.Python3中,一行可以書寫各種語句嗎?4.Python3中,一種語句可以提成多行書寫嗎?5.請問Pythonand操作符和C語言操作符有何不同?【該題針對有C或C++基本朋友】6.據(jù)說過“短路邏輯(short-circuitlogic)”嗎?動動手:0.完善第二個改進(jìn)規(guī)定(為顧客提供三次機(jī)會嘗試,機(jī)會用完或者顧客猜中答案均退出循環(huán))并改進(jìn)視頻中小甲魚代碼。1.嘗試寫代碼實(shí)現(xiàn)如下截圖功能:第五課測試題:0.在Python中,int表達(dá)整型,那你還記得bool、float和str分別表達(dá)什么嗎?1.你懂得為什么布爾類型(bool)True和False分別用1和0來代替嗎?2.使用int()將小數(shù)轉(zhuǎn)換為整數(shù),成果是向上取整還是向下取整呢?3.咱們?nèi)祟愃季S是習(xí)慣于“四舍五入”法,你有什么辦法使得int()按照“四舍五入”方式取整嗎?4.獲得一種變量類型,視頻中簡介可以使用type()和isinstance(),你更傾向于使用哪個?5.Python3可以給變量命名中文名,懂得為什么嗎?6.【該題針對零基本魚油】你覺得這個系列教學(xué)有難度嗎?動動手:0.針對視頻中小甲魚提到小漏洞,再次改進(jìn)咱們小游戲:當(dāng)顧客輸入錯誤類型時(shí)候,及時(shí)提示顧客重新輸入,防止程序崩潰。如果你嘗試過如下做法,請舉下小手:1.temp=input("不妨猜一下小甲魚當(dāng)前心里想是哪個數(shù)字:")2.#這種想法是由于type(1)會返回,如果type(temp)返回成果一致闡明輸入是整數(shù)。3.whiletype(temp)!=type(1):4.print("抱歉,輸入不合法,",end='')5.temp=input("請輸入一種整數(shù):")復(fù)制代碼或者也許這樣:1.temp=input("不妨猜一下小甲魚當(dāng)前心里想是哪個數(shù)字:")2.#not操作符作用是將布爾類型成果翻轉(zhuǎn):即取反意思,notTrue==Flase3.whilenotisinstance(temp,int):4.print("抱歉,輸入不合法,",end='')5.temp=input("請輸入一種整數(shù):")復(fù)制代碼以上辦法思路是對的,但是似乎忽視了一點(diǎn)兒:就是input()返回值始終是字符串,因此type(temp)永遠(yuǎn)是!其實(shí)有蠻多做法可以實(shí)現(xiàn),但是就當(dāng)前咱們學(xué)習(xí)過內(nèi)容來看,還局限性夠。因此,在讓人們動手完畢這道題之前,小甲魚簡介一點(diǎn)新東西給人們!s為字符串s.isalnum()所有字符都是數(shù)字或者字母,為真返回Ture,否則返回False。s.isalpha()所有字符都是字母,為真返回Ture,否則返回False。s.isdigit()所有字符都是數(shù)字,為真返回Ture,否則返回False。s.islower()所有字符都是小寫,為真返回Ture,否則返回False。s.isupper()所有字符都是大寫,為真返回Ture,否則返回False。s.istitle()所有單詞都是首字母大寫,為真返回Ture,否則返回False。s.isspace()所有字符都是空白字符,為真返回Ture,否則返回False。例如:>>>s='ILOVEFISHC'>>>s.isupper()>>>True好了,文字教程就到這里,人們趕緊趁熱打鐵,改造咱們小游戲吧!1.寫一種程序,判斷給定年份與否為閏年。(注意:請使用已學(xué)過BIF進(jìn)行靈活運(yùn)用)這樣定義閏年:能被4整除但不能被100整除,或者能被400整除都是閏年。2.請寫下這一節(jié)課你學(xué)習(xí)到內(nèi)容:格式不限,回憶并復(fù)述是加強(qiáng)記憶好方式!測試題答案:本帖隱藏內(nèi)容0.在Python中,int表達(dá)整型,那你還記得bool、float和str分別表達(dá)什么嗎?bool表達(dá)布爾類型float表達(dá)浮點(diǎn)型str表達(dá)字符串1.你懂得為什么布爾類型(bool)True和False分別用1和0來代替嗎?你也許據(jù)說過計(jì)算機(jī)是很“笨”,究其主線是由于它只結(jié)識二進(jìn)制數(shù),因此所有編程語言最后都會轉(zhuǎn)換成簡樸二進(jìn)制序列給CPU按照一定規(guī)則解析。由于二進(jìn)制只有兩個數(shù):0和1,因而用0和1來表達(dá)False和True再適合但是了,由于不用揮霍資源在轉(zhuǎn)換過程上!2.使用int()將小數(shù)轉(zhuǎn)換為整數(shù),成果是向上取整還是向下取整呢?咱們可愛小甲魚說了,小數(shù)取整會采用比較暴力截?cái)喾绞剑聪蛳氯≌?。(注?.5向上取整為6,向下取整為5)3.咱們?nèi)祟愃季S是習(xí)慣于“四舍五入”法,你有什么辦法使得int()按照“四舍五入”方式取整嗎?int()固然沒那么“聰穎”,但機(jī)器是死,魚油是活!5.4“四舍五入”成果為:5,int(5.4+0.5)==55.6“四舍五入”成果為:6,int(5.6+0.5)==6人們看明白了嗎?4.獲得一種變量類型,視頻中簡介可以使用type()和isinstance(),你更傾向于使用哪個?建議使用isinstance(),由于它返回成果比較直接,此外type()其實(shí)并沒有你想象那么簡樸,咱們后邊會講到。5.Python3可以給變量命名中文名,懂得為什么嗎?Pyhton3源碼文獻(xiàn)默認(rèn)使用utf-8編碼(支持中文),這就使得如下代碼是合法:>>>小甲魚='我愛你'>>>print(小甲魚)>>>我愛你6.【該題針對零基本魚油】你覺得這個系列教學(xué)有難度嗎?如果有不懂問題,請?jiān)诖颂幪釂枺捍送庑枰〖佐~在視頻解說方面做哪方面改進(jìn)請回帖告之!動動手答案:本帖隱藏內(nèi)容0.針對視頻中小甲魚提到小漏洞,再次改進(jìn)咱們小游戲:當(dāng)顧客輸入錯誤類型時(shí)候,及時(shí)提示顧客重新輸入,防止程序崩潰。需要注意地方在代碼中已經(jīng)注釋!1.importrandom2.times=33.secret=random.randint(1,10)4.print('------------------我愛魚C工作室------------------')5.guess=06.print("不妨猜一下小甲魚當(dāng)前心里想是哪個數(shù)字:",end="")7.while(guess!=secret)and(times>0):8.temp=input()9.whilenottemp.isdigit():10.temp=input("抱歉,您輸入有誤,請輸入一種整數(shù):")11.guess=int(temp)12.times=times-1#顧客每輸入一次,可用機(jī)會就-113.ifguess==secret:14.print("我草,你是小甲魚心里蛔蟲嗎?!")15.print("哼,猜中了也沒有獎勵!")16.else:17.ifguess>secret:18.print("哥,大了大了~~~")19.else:20.print("嘿,小了,小了~~~")21.iftimes>0:22.print("再試一次吧:",end="")23.else:24.print("機(jī)會用光咯T_T")25.print("游戲結(jié)束,不玩啦^_^")復(fù)制代碼1.寫一種程序,判斷給定年份與否為閏年。1.temp=input('請輸入一種年份:')2.whilenottemp.isdigit():3.temp=input("抱歉,您輸入有誤,請輸入一種整數(shù):")4.5.year=int(temp)6.ifyear/400==int(year/400):7.print(temp+'是閏年!')8.else:9.if(year/4==int(year/4))and(year/100!=int(year/100)):10.print(temp+'是閏年!')11.else:12.print(temp+'不是閏年!')復(fù)制代碼2.嘗試寫代碼實(shí)現(xiàn)如下截圖功能:3.請寫下這一節(jié)課你學(xué)習(xí)到內(nèi)容:格式不限,回憶并復(fù)述是加強(qiáng)記憶好方式!回答您答案即可查看參照答案!測試題答案:本帖隱藏內(nèi)容0.請問如下代碼會打印多少次“我愛魚C!”死循環(huán),會始終打印“我愛魚C!”(嗯,這也算是永遠(yuǎn)支持魚C辦法之一),直到崩潰或者顧客按下快捷鍵CTRL+C(強(qiáng)制結(jié)束)導(dǎo)致死循環(huán)因素是while后邊條件永遠(yuǎn)為真(True),在Python看來,只有如下內(nèi)容會被看作假(注意冒號括號里邊啥都沒有,連空格都不要有?。篎alseNone0""''()[]{}其她一切都被解釋為真!不妨試試:1.while'':2.print('進(jìn)入循環(huán)')3.print('退出循環(huán)')復(fù)制代碼或者1.whileFlase:2.print('進(jìn)入循環(huán)')3.print('退出循環(huán)')復(fù)制代碼或者1.while0:2.print('進(jìn)入循環(huán)')3.print('退出循環(huán)')復(fù)制代碼1.請問如下代碼會打印多少次“我愛魚C!”會打印10次。2.請寫出與10<cost<50等價(jià)表達(dá)式(10<cost)and(cost<50)3.Python3中,一行可以書寫各種語句嗎?可以,語句之間用分號隔開即可,不妨試試:>>>print('Ilovefishc');print('verymuch!')4.Python3中,一種語句可以提成多行書寫嗎?可以,一行過長語句可以使用反斜杠或者括號分解成幾行,不妨試試:1.>>>3>4and\2.1<2復(fù)制代碼或者1.>>>(3>4and2.1<2)復(fù)制代碼5.【該題針對有C或C++基本朋友】請問Pythonand操作符和C語言操作符有何不同?有圖有真相(C\C++VSPython):VS6.據(jù)說過“短路邏輯(short-circuitlogic)”嗎?邏輯操作符有個有趣特性:在不需規(guī)定值時(shí)候不進(jìn)行操作。這樣說也許比較“高深”,舉個例子,表達(dá)式xandy,需要x和y兩個變量同步為真(True)時(shí)候,成果才為真。因而,如果當(dāng)x變量得知是假(False)時(shí)候,表達(dá)式就會立即返回False,而不用去管y變量值。這種行為被稱為短路邏輯(short-circuitlogic)或者惰性求值(lazyevaluation),這種行為同樣也應(yīng)用與or操作符,這個后邊課程小甲魚會講到,不急。事實(shí)上,Python做法是如果x為假,表達(dá)式會返回x值(0),否則它就會返回y值(例子參照樓上那題)。動動手答案:本帖隱藏內(nèi)容0.完善第二個改進(jìn)規(guī)定(為顧客提供三次機(jī)會嘗試,機(jī)會用完或者顧客猜中答案均退出循環(huán))并改進(jìn)視頻中小甲魚代碼。需要注意地方在代碼中已經(jīng)注釋!1.importrandom2.times=33.secret=random.randint(1,10)4.print('------------------我愛魚C工作室------------------')5.#這里先給guess賦值(賦一種絕對不等于secret值)6.guess=07.#print()默認(rèn)是打印完字符串會自動添加一種換行符,end=""參數(shù)告訴print()用空格代替代行8.#嗯,小甲魚覺得富有創(chuàng)意你應(yīng)當(dāng)會嘗試用end="JJ"?9.print("不妨猜一下小甲魚當(dāng)前心里想是哪個數(shù)字:",end="")10.while(guess!=secret)and(times>0):11.temp=input()12.guess=int(temp)13.times=times-1#顧客每輸入一次,可用機(jī)會就-114.ifguess==secret:15.print("我草,你是小甲魚心里蛔蟲嗎?!")16.print("哼,猜中了也沒有獎勵!")17.else:18.ifguess>secret:19.print("哥,大了大了~~~")20.else:21.print("嘿,小了,小了~~~")22.iftimes>0:23.print("再試一次吧:",end="")24.else:25.print("機(jī)會用光咯T_T")26.print("游戲結(jié)束,不玩啦^_^")復(fù)制代碼1.嘗試寫代碼實(shí)現(xiàn)如下截圖功能:1.temp=input('請輸入一種整數(shù):')2.number=int(temp)3.i=14.whilenumber:5.print(i)6.i=i+17.number=number-1復(fù)制代碼2.嘗試寫代碼實(shí)現(xiàn)如下截圖功能:1.temp=input('請輸入一種整數(shù):')2.number=int(temp)3.whilenumber:4.i=number-15.whilei:6.print('',end='')7.i=i-18.j=number9.whilej:10.print('*',end='')11.j=j-112.print()13.number=number-1復(fù)制代碼第六課測試題:0.Pythonfloor除法當(dāng)前使用“//”實(shí)現(xiàn),那3.0//2.0您目測會顯示什么內(nèi)容呢?1.a<b<c事實(shí)上是等于?2.不使用IDLE,你可以輕松說出5**-2值嗎?3.如何簡樸判斷一種數(shù)是奇數(shù)還是偶數(shù)?4.請用最迅速度說出答案:not1or0and1or3and4or5and6or7and8and95.還記得咱們上節(jié)課那個求閏年作業(yè)嗎?如果還沒有學(xué)到“求余”操作,還記得用什么辦法可以“委曲求全”代替“%”功能呢?動動手:0.請寫一種程序打印出0~100所有奇數(shù)。1.咱們說過當(dāng)前Python可以計(jì)算很大很大數(shù)據(jù),但是......真正大數(shù)據(jù)計(jì)算可是要靠剛剛硬件滴,不妨寫一種小代碼,讓你計(jì)算機(jī)為之崩潰?2.愛因斯坦曾出過這樣一道有趣數(shù)學(xué)題:有一種長階梯,若每步上2階,最后剩1階;若每步上3階,最后剩2階;若每步上5階,最后剩4階;若每步上6階,最后剩5階;只有每步上7階,最后剛好一階也不剩。(小甲魚溫馨提示:步子太大真容易扯著蛋~~~)題目:請編程求解該階梯至少有多少階?3.請寫下這一節(jié)課你學(xué)習(xí)到內(nèi)容:格式不限,回憶并復(fù)述是加強(qiáng)記憶好方式!回答您答案即可查看參照答案!測試題答案:本帖隱藏內(nèi)容0.Pythonfloor除法當(dāng)前使用“//”實(shí)現(xiàn),那3.0//2.0您目測會顯示什么內(nèi)容呢?如果回答是1.5那么很遺憾,您受到C語言影響比較大,Python這里會義無反顧地執(zhí)行floor除法原則,答案是:1.01.a<b<c事實(shí)上是等于?(a<b)and(b<c)2.不使用IDLE,你可以輕松說出5**-2值嗎?0.04,也就是1/25冪運(yùn)算操作符比其左側(cè)一元操作符優(yōu)先級高,比其右側(cè)一元操作符優(yōu)先級低。3.如何簡樸判斷一種數(shù)是奇數(shù)還是偶數(shù)?使用求余可以簡樸得到答案:能被2整除為偶數(shù),因此x%2==0,否則為奇數(shù)。4.請用最迅速度說出答案:not1or0and1or3and4or5and6or7and8and9如果你回答是0,那么小甲魚很開心你中招了!答案是:4notorand優(yōu)先級是不同:not>and>or咱們按照優(yōu)先級給它們加上括號:(not1)or(0and1)or(3and4)or(5and6)or(7and8and9)==0or0or4or6or9==4為啥是4?人們還記得第四講作業(yè)提到“短路邏輯”嗎?3and4==4,而3or4==3。因此答案是:4溫馨提示:為了更好表達(dá)你程序,小甲魚再次呼吁有些括號還是不能省下,畢竟不是所有程序員都跟你同樣都將優(yōu)先級爛透于心。5.還記得咱們上節(jié)課那個求閏年作業(yè)嗎?如果還沒有學(xué)到“求余”操作,還記得用什么辦法可以“委曲求全”代替“%”功能呢?由于上節(jié)課咱們還沒有教人們“求余”操作,因此小甲魚使用了“ifyear/400==int(year/400)”這樣方式來“委曲求全”。動動手答案:本帖隱藏內(nèi)容0.請寫一種程序打印出0~100所有奇數(shù)。1.i=02.whilei<=100:3.ifi%2!=0:4.print(i,end='')5.i+=16.else:7.i+=1復(fù)制代碼1.咱們說過當(dāng)前Python可以計(jì)算很大很大數(shù)據(jù),但是......真正大數(shù)據(jù)計(jì)算可是要靠剛剛硬件滴,不妨寫一種小代碼,讓你計(jì)算機(jī)為之崩潰?print(2**2**32)#普通諸多機(jī)子都會在一會兒之后:MemoryOverflow,內(nèi)存不夠用。#設(shè)計(jì)到冪操作,成果都是驚人滴。2.題目:請編程求解該階梯至少有多少階?1.x=72.i=13.flag=04.5.whilei<=100:6.if(x%2==1)and(x%3==2)and(x%5==4)and(x%6==5):7.flag=18.else:9.x=7*(i+1)#依照題意,x一定是7整數(shù)倍,因此每次乘以710.i+=111.12.ifflag==1:13.print('階梯數(shù)是:',x)14.else:15.print('在程序限定范疇內(nèi)找不到答案!')復(fù)制代碼第八課0.ifnot(money<100):上邊這行代碼相稱于?1.assert作用是什么?2.假設(shè)有x=1,y=2,z=3,請問如何迅速將三個變量值互相互換?3.猜猜(x<yand[x]or[y])[0]實(shí)現(xiàn)什么樣功能?4.你據(jù)說過成員資格運(yùn)算符嗎?動動手:0.視頻中小甲魚使用ifelifelse在大多數(shù)狀況下效率要比所有使用if要高,但依照普通記錄規(guī)律,一種班成績普通服從正態(tài)分布,也就是說平均成績普通集中在70~80分之間,因而依照記錄規(guī)律,咱們還可以改進(jìn)下程序以提高效率。題目備忘:按照100分制,90分以上成績?yōu)锳,80到90為B,60到80為C,60如下為D,寫一種程序,當(dāng)顧客輸入分?jǐn)?shù),自動轉(zhuǎn)換為ABCD形式打印。1.Python作者在很長一段時(shí)間不肯加入三元操作符就是怕跟C語言同樣搞出國際亂碼大賽,蛋疼復(fù)雜度讓初學(xué)者望而生畏,但是,如果你一旦弄清晰了三元操作符使用技巧,或許某些比較復(fù)雜問題反而迎刃而解。請將如下代碼修改為三元操作符實(shí)現(xiàn):1.x,y,z=6,5,42.ifx<y:3.small=x4.ifz<small:5.small=z6.elify<z:7.small=y8.else:9.small=z復(fù)制代碼2.請寫下這一節(jié)課你學(xué)習(xí)到內(nèi)容:格式不限,回憶并復(fù)述是加強(qiáng)記憶好方式!回答您答案即可查看參照答案!測試題答案:本帖隱藏內(nèi)容0.ifnot(money<100):這行代碼相稱于?ifmoney>=100:1.assert作用是什么?assert這個核心字咱們稱之為“斷言”,當(dāng)這個核心字后邊條件為假時(shí)候,程序自動崩潰并拋出AssertionError異常。什么狀況下咱們會需要這樣代碼呢?當(dāng)咱們在測試程序時(shí)候就較好用,由于與其讓錯誤條件導(dǎo)致程序此后莫名其妙地崩潰,不如在錯誤條件浮現(xiàn)那一瞬間咱們實(shí)現(xiàn)“自爆”。普通來說咱們可以用Ta再程序中置入檢查點(diǎn),當(dāng)需要保證程序中某個條件一定為真才干讓程序正常工作話,assert核心字就非常有用了。2.假設(shè)有x=1,y=2,z=3,請問如何迅速將三個變量值互相互換?x,y,z=z,y,x3.猜猜(x<yand[x]or[y])[0]實(shí)現(xiàn)什么樣功能?這其實(shí)是Python作者還沒有為Python加入三元操作符之前,Python社區(qū)小伙伴們靈活使用and和or搭配來實(shí)現(xiàn)三元操作符功能,這里邊有涉及到列表和切片知識,這某些知識不久就會解說,迫不及待朋友可以先稍微預(yù)習(xí)下。4.你據(jù)說過成員資格運(yùn)算符嗎?Python有一種成員資格運(yùn)算符:in,用于檢查一種值與否在序列中,如果在序列中返回True,否則返回False。例如:1.>>>name='小甲魚'2.>>>'魚'inname3.True4.>>>'肥魚'inname5.False復(fù)制代碼當(dāng)下節(jié)課咱們解說for語句時(shí)候,你看到in會不會就有了更進(jìn)一步理解?!動動手答案:本帖隱藏內(nèi)容0.視頻中小甲魚使用ifelifelse在大多數(shù)狀況下效率要比所有使用if要高,但依照普通記錄規(guī)律,一種班成績普通服從正態(tài)分布,也就是說平均成績普通集中在70~80分之間,因而依照記錄規(guī)律,咱們還可以改進(jìn)下程序以提高效率。1.score=int(input('請輸入一種分?jǐn)?shù):'))2.if80>score>=60:3.print('C')4.elif90>score>=80:5.print('B')6.elif60>score>=0:7.print('D')8.elif100>=score>=90:9.print('A')10.else:11.print('輸入錯誤!')復(fù)制代碼1.Python作者在很長一段時(shí)間不肯加入三元操作符就是怕跟C語言同樣搞出國際亂碼大賽,蛋疼復(fù)雜度讓初學(xué)者望而生畏,但是,如果你一旦弄清晰了三元操作符使用技巧,或許某些比較復(fù)雜問題反而迎刃而解。1.small=xif(x<yandx<z)else(yify<zelsez)復(fù)制代碼第九課0.下面循環(huán)會打印多少次"ILoveFishC"?1.foriinrange(0,10,2):2.print('ILoveFishC')復(fù)制代碼1.下面循環(huán)會打印多少次"ILoveFishC"?1.foriin5:2.print('ILoveFishC')復(fù)制代碼2.回顧一下break和continue在循環(huán)中起到作用?3.請談下你對列表理解?4.請問range(10)生成哪些數(shù)?5.目測如下程序會打印什么?1.whileTrue:2.whileTrue:3.break4.print(1)5.print(2)6.break7.print(3)復(fù)制代碼6.什么狀況下咱們要使循環(huán)永遠(yuǎn)為真?7.【學(xué)會提高代碼效率】你覺得如下代碼效率方面如何?有無辦法可以大幅度改進(jìn)(依然使用while)?1.i=02.string='ILoveFishC.com'3.whilei<len(string)):4.print(i)5.i+=1復(fù)制代碼動動手:細(xì)節(jié)決定成敗,看答案前記得自己先敲代碼!0.設(shè)計(jì)一種驗(yàn)證顧客密碼程序,顧客只有三次機(jī)會輸入錯誤,但是如果顧客輸入內(nèi)容中包括"*"則不計(jì)算在內(nèi)。程序演示如圖:1.編寫一種程序,求100~999之間所有水仙花數(shù)。如果一種3位數(shù)等于其各位數(shù)字立方和,則稱這個數(shù)為水仙花數(shù)。例如:153=1^3+5^3+3^3,因而153就是一種水仙花數(shù)。2.三色球問題有紅、黃、藍(lán)三種顏色求,其中紅球3個,黃球3個,綠球6個。先將這12個球混合放在一種盒子中,從中任意摸出8個球,編程計(jì)算摸出球各種顏色搭配。3.請寫下這一節(jié)課你學(xué)習(xí)到內(nèi)容:格式不限,回憶并復(fù)述是加強(qiáng)記憶好方式!回答您答案即可查看參照答案!測試題答案:本帖隱藏內(nèi)容0.下面循環(huán)會打印多少次"ILoveFishC"?1.foriinrange(0,10,2):2.print('ILoveFishC')復(fù)制代碼5次,由于從0開始,到10結(jié)束,步進(jìn)為2。1.下面循環(huán)會打印多少次"ILoveFishC"?1.foriin5:2.print('ILoveFishC')復(fù)制代碼會報(bào)錯,上節(jié)課課后習(xí)題咱們提到了in是“成員資格運(yùn)算符”,而不是像C語言那樣去使用for語法。Pythonfor更像腳本語言foreach。2.回顧一下break和continue在循環(huán)中起到作用break語句作用是終結(jié)當(dāng)前循環(huán),跳出循環(huán)體。continue語句作用是終結(jié)本輪循環(huán)并開始下一輪循環(huán)(這里要注意是:在開始下一輪循環(huán)之前,會先測試循環(huán)條件)。3.請談下你對列表理解嗯,有些知識點(diǎn)需要自己總結(jié)才干加固,下節(jié)課小甲魚將跟人們暢談一種打了激素?cái)?shù)組:列表,不容錯過哦^_^4.請問range(10)生成哪些數(shù)?會生成range(0,10),list(range(0,10))轉(zhuǎn)換成列表是:[0,1,2,3,4,5,6,7,8,9],注意不包括10哦。5.目測如下程序會打印什么?1.whileTrue:2.whileTrue:3.break4.print(1)5.print(2)6.break7.print(3)復(fù)制代碼會打?。?3由于break只能跳出一層循環(huán),記住咯!6.什么狀況下咱們要使循環(huán)永遠(yuǎn)為真?whileTure:循環(huán)體同樣用于游戲?qū)崿F(xiàn),由于游戲只要運(yùn)營著,就需要時(shí)刻接受顧客輸入,因而使用永遠(yuǎn)為真保證游戲“在線”。操作系統(tǒng)也是同樣道理,時(shí)刻待命,操作系統(tǒng)永遠(yuǎn)為真這個循環(huán)叫做消息循環(huán)。此外,許多通訊服務(wù)器客戶端/服務(wù)器系統(tǒng)也是通過這樣原理來工作。因此永遠(yuǎn)為“真”雖然是“死循環(huán)”,但不一定是壞事,再說了,咱們可以隨時(shí)用break來跳出循環(huán)!7.【學(xué)會提高代碼效率】你覺得如下代碼效率方面如何?有無辦法可以大幅度改進(jìn)(依然使用while)?1.i=02.string='ILoveFishC.com'3.whilei<len(string)):4.print(i)5.i+=1復(fù)制代碼這段代碼之因此“效率比較低”是由于每次循環(huán)都需要調(diào)用一次len()函數(shù)(咱們還沒有學(xué)到函數(shù)概念,小甲魚這里為零基本朋友形象解釋下:就像你打游戲打得正HIGH時(shí)候,老媽讓你去買鹽......你有兩種選取,一次買一包,一天去買五次,或者一次性買五包回來,老媽要就直接給她。)1.i=02.string='ILoveFishC.com'3.length=len(string)4.whilei<length:5.print(i)6.i+=1復(fù)制代碼小甲魚但愿學(xué)習(xí)咱課程朋友不是只為了可以把程序?qū)懗鰜?,而是追求把代碼寫好,寫美麗,做一種有抱負(fù)、有追求程序猿!動動手答案:本帖隱藏內(nèi)容0.設(shè)計(jì)一種驗(yàn)證顧客密碼程序,顧客只有三次機(jī)會輸入錯誤,但是如果顧客輸入內(nèi)容中包括"*"則不計(jì)算在內(nèi)。1.count=32.password='FishC.com'3.4.whilecount:5.passwd=input('請輸入密碼:')6.ifpasswd==password:7.print('密碼對的,進(jìn)入程序......')8.break9.elif'*'inpasswd:10.print('密碼中不能具有"*"號!您尚有',count,'次機(jī)會!',end='')11.continue12.else:13.print('密碼輸入錯誤!您尚有',count-1,'次機(jī)會!',end='')14.count-=1復(fù)制代碼1.編寫一種程序,求100~999之間所有水仙花數(shù)。如果一種3位數(shù)等于其各位數(shù)字立方和,則稱這個數(shù)為水仙花數(shù)。例如:153=1^3+5^3+3^3,因而153就是一種水仙花數(shù)1.foriinrange(100,1000):2.sum=03.temp=i4.whiletemp:5.sum=sum+(temp%10)**36.temp//=10#注意這里要使用地板除哦~7.ifsum==i:8.print(i)復(fù)制代碼2.三色球問題有紅、黃、藍(lán)三種顏色求,其中紅球3個,黃球3個,綠球6個。先將這12個球混合放在一種盒子中,從中任意摸出8個球,編程計(jì)算摸出球各種顏色搭配。1.print('red\tyellow\tblue')2.forredinrange(0,4):3.foryellowinrange(0,4):4.forgreeninrange(2,7):5.ifred+yellow+green==8:6.#注意,下邊不是字符串拼接,因而不用?+?哦~7.print(red,'\t',yellow,'\t',green)復(fù)制代碼注釋:range(2,7)是產(chǎn)生[2,3,4,5,6]5個數(shù),綠球不能是1個,由于如果綠球是1個話,紅球+黃球需要有7個才干符合題意,而紅球和黃球每種只有3個,因而是range(2,7)第十課測試題:0.列表都可以存儲某些什么東西?1.向列表增長元素有哪些辦法?2.append()辦法和extend()辦法都是向列表末尾增長元素,請問她們有什么區(qū)別?3.member.append(['竹林小溪','Crazy迷戀'])和member.extend(['竹林小溪','Crazy迷戀'])實(shí)現(xiàn)效果同樣嗎?4.有列表name=['F','i','h','C'],如果小甲魚想要在元素'i'和'h'之間插入元素's',應(yīng)當(dāng)使用什么辦法來插入?動動手:0.自己動手試試看,并分析在這種狀況下,向列表添加數(shù)據(jù)應(yīng)當(dāng)采用哪種辦法比較好?假設(shè)給定如下列表:member=['小甲魚','黑夜','迷途','怡靜','秋舞斜陽']規(guī)定將列表修改為:member=['小甲魚',88,'黑夜',90,'迷途',85,'怡靜',90,'秋舞斜陽',88]辦法一:使用insert()和append()辦法修改列表。辦法二:重新創(chuàng)立一種同名字列表覆蓋。1.運(yùn)用for循環(huán)打印上邊member列表中每個內(nèi)容,如圖:2.上一題打印樣式不是較好,能不能修改一下代碼打印成下圖樣式呢?【請至少使用兩種辦法實(shí)現(xiàn)】3.請寫下這一節(jié)課你學(xué)習(xí)到內(nèi)容:格式不限,回憶并復(fù)述是加強(qiáng)記憶好方式!回答您答案即可查看參照答案!測試題答案:本帖隱藏內(nèi)容0.列表都可以存儲某些什么東西?咱們說Python列表是一種打了激素?cái)?shù)組,如果把數(shù)組比喻成集裝箱,那么Python列表就是一種大倉庫,Ta可以存儲咱們已經(jīng)學(xué)習(xí)過任何數(shù)據(jù)類型。>>>mix=[1,?小甲魚?,3.14,[1,2,3]]1.向列表增長元素有哪些辦法?這節(jié)課咱們教過人們?nèi)N辦法想列表增長元素,分別是:append()、extend()和insert()。2.append()辦法和extend()辦法都是向列表末尾增長元素,請問她們有什么區(qū)別?append()辦法是將參數(shù)作為一種元素增長到列表末尾。extend()辦法則是將參數(shù)作為一種列表去擴(kuò)展列表末尾。請看如下示例:1.>>>name=['F','i','s','h']2.>>>name.append('C')3.>>>name4.['F','i','s','h','C']5.>>>name.extend(['.','c'])6.>>>name7.['F','i','s','h','C','.','c']8.>>>name.append(['o','m'])9.>>>name10.['F','i','s','h','C','.','c',['o','m']]復(fù)制代碼3.member.append(['竹林小溪','Crazy迷戀'])和member.extend(['竹林小溪','Crazy迷戀'])實(shí)現(xiàn)效果同樣嗎?不同樣,由于怕人們沒有仔細(xì)看上一題示例,因此不懂請看上一題解釋。4.有列表name=['F','i','h','C'],如果小甲魚想要在元素'i'和'h'之間插入元素's',應(yīng)當(dāng)使用什么辦法來插入?name.insert(2,'s')動動手答案:本帖隱藏內(nèi)容0.自己動手試試看,并分析在這種狀況下,向列表添加數(shù)據(jù)應(yīng)當(dāng)采用哪種辦法比較好?假設(shè)給定如下列表:member=['小甲魚','黑夜','迷途','怡靜','秋舞斜陽']規(guī)定將列表修改為:member=['小甲魚',88,'黑夜',90,'迷途',85,'怡靜',90,'秋舞斜陽',88]辦法一:使用insert()和append()辦法修改列表。辦法二:重新創(chuàng)立一種同名字列表覆蓋。解答:辦法一:1.member.insert(1,88)2.member.insert(3,90)3.member.insert(5,85)4.member.insert(7,90)5.member.append(88)復(fù)制代碼辦法二:1.member=['小甲魚',88,'黑夜',90,'迷途',85,'怡靜',90,'秋舞斜陽',88]復(fù)制代碼對于這種狀況,明顯是第二種辦法看起來要好某些嘛。但是對于大型列表,第一種辦法也許更適當(dāng),因此咱們說永遠(yuǎn)沒有最佳,只有最適當(dāng)。1.運(yùn)用for循環(huán)打印上邊member列表中每個內(nèi)容1.member=['小甲魚',88,'黑夜',90,'迷途',85,'怡靜',90,'秋舞斜陽',88]2.foreachinmember:3.print(each)復(fù)制代碼2.上一題打印樣式不是較好,能不能修改一下代碼打印成下圖樣式呢?【請至少使用兩種辦法實(shí)現(xiàn)】1.辦法一:2.count=03.length=len(member)4.whilecount<length:5.print(member[count],member[count+1])6.count+=27.8.辦法二:9.10.foreachinrange(len(member)):11.ifeach%2==0:12.print(member[each],member[each+1])復(fù)制代碼0.注意,這道題跟上節(jié)課那道題有點(diǎn)兒不同,回答完請上機(jī)實(shí)驗(yàn)或參照答案。1.>>>old=[1,2,3,4,5]2.>>>new=old3.>>>old=[6]4.>>>print(new)復(fù)制代碼如果不上機(jī)操作,你覺得會打印什么內(nèi)容?第十二課1.請問如何將下邊這個列表'小甲魚'修改為'小魷魚'?1.list1=[1,[1,2,['小甲魚']],3,5,8,13,18]復(fù)制代碼2.要對一種列表進(jìn)行順序排序,請問使用什么辦法?3.要對一種列表進(jìn)行逆序排序,請問使用什么辦法?4.

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論