面向?qū)ο?全市一等獎_第1頁
面向?qū)ο?全市一等獎_第2頁
面向?qū)ο?全市一等獎_第3頁
面向?qū)ο?全市一等獎_第4頁
面向?qū)ο?全市一等獎_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

移動應(yīng)用開發(fā)項目實戰(zhàn)由移動應(yīng)用資源庫課程開發(fā)組開發(fā)北京電子科技職業(yè)學(xué)院Content目錄01020304題目及要求背景知識解題思路參考程序05習(xí)題答案題目及要求

定義一個Person類,該類可以實現(xiàn)通過身份證獲取出生日期、性別和年齡的方法。例如: 輸入身份證號:012345199605010512

出生日期:19960501

性別:男

年齡:22背景知識(一) 面向?qū)ο蟪绦蛟O(shè)計面向?qū)ο蟪绦蛟O(shè)計(ObjectOrientedProgramming,OOP)主要針對大型軟件設(shè)計而提出,使得軟件設(shè)計更加靈活,能夠很好地支持代碼復(fù)用和設(shè)計復(fù)用,并且使得代碼具有更好的可讀性和可擴展性。面向?qū)ο蟪绦蛟O(shè)計的一條基本原則是計算機程序由多個能夠起到子程序作用的單元或?qū)ο蠼M合而成,這大大地降低了軟件開發(fā)的難度,使得編程就像搭積木一樣簡單。面向?qū)ο蟪绦蛟O(shè)計的一個關(guān)鍵性觀念是將數(shù)據(jù)以及對數(shù)據(jù)的操作封裝在一起,組成一個相互依存、不可分割的整體,即對象。對于相同類型的對象進(jìn)行分類、抽象后,得出共同的特征而形成了類,面向?qū)ο蟪绦蛟O(shè)計的關(guān)鍵就是如何合理地定義和組織這些類以及類之間的關(guān)系。背景知識(二) 類Python使用class關(guān)鍵字來定義類,class關(guān)鍵字之后是一個空格,然后是類的名字,再然后是一個冒號,最后換行并定義類的內(nèi)部實現(xiàn)。類名的首字母一般要大寫,當(dāng)然也可以按照自己的習(xí)慣定義類名,但一般推薦參考慣例來命名,并在整個系統(tǒng)的設(shè)計和實現(xiàn)中保持風(fēng)格一致,這一點對于團隊合作尤其重要。classCar: definfor(self): print("Thisisacar")背景知識(三) 實例如果說類是一種數(shù)據(jù)結(jié)構(gòu)定義類型,那么實例則聲明了一個這種類型的變量。定義了類之后,可以用來實例化對象,并通過“對象名.成員”的方式來訪問其中的數(shù)據(jù)成員或成員方法。>>>car=Car()>>>r()Thisisacar背景知識(四) __init__()方法__init__()方法是解釋器為創(chuàng)建一個實例后調(diào)用的第一個方法,在開始使用它之前,可以通過它做些準(zhǔn)備工作。它是很多類定義的特殊方法之一,其中一些方法是預(yù)定義的,缺省情況下,不進(jìn)行任何操作,比如__init__(),要定制,就必須對它進(jìn)行重載。背景知識

當(dāng)類被調(diào)用時,實例化的第一步是創(chuàng)建實例對象。一旦對象創(chuàng)建了,Python檢查是否實現(xiàn)了__init__()方法。默認(rèn)情況下,如果沒有定義(或覆蓋)特殊方法__init__(),對實例不會施加任何特別的操作。任何所需的特定操作,都需要程序員實現(xiàn)__init__()方法,覆蓋它的默認(rèn)行為。如果__init__()方法沒有實現(xiàn),則返回它的對象,實例化過程完畢。如果__init__()方法已經(jīng)被實現(xiàn),那么它將被調(diào)用,實例對象作為第一個參數(shù)(self)被傳遞進(jìn)去,像標(biāo)準(zhǔn)方法調(diào)用一樣。調(diào)用類時,傳進(jìn)的任何參數(shù)都交給了__init__()方法。背景知識(五) whilewhile語句用于循環(huán)執(zhí)行程序,即在滿足某條件時,循環(huán)執(zhí)行某段程序,以處理需要重復(fù)處理的相同任務(wù)。如果條件不滿足則結(jié)束循環(huán)語句。1.while語句的一般形式:while判斷條件:

語句還可以通過設(shè)置條件表達(dá)式永遠(yuǎn)不為False來實現(xiàn)無限循環(huán),無限循環(huán)在服務(wù)器上客戶端的實時請求時非常有用。背景知識(六)breakPython中的break語句,就像在C語言中,打破了最小封閉for或while循環(huán)。break語句用來終止循環(huán)語句,即循環(huán)條件沒有False條件或者序列還沒被完全遞歸完,也會停止執(zhí)行循環(huán)語句。如果使用嵌套循環(huán),break語句將停止執(zhí)行最深層的循環(huán),并開始執(zhí)行下一行代碼。break語句用在while和for循環(huán)中。背景知識(七) datetimedatetime模塊是date和time模塊的合集,datetime有兩個常量,MAXYEAR和MINYEAR,分別是9999和1。datetime模塊定義了5個類,分別是1.datetime.date:表示日期的類。2.datetime.datetime:表示日期時間的類。3.datetime.time:表示時間的類。4.datetime.timedelta:表示時間間隔,即兩個時間點的間隔。5.datetime.tzinfo:時區(qū)相關(guān)信息的類。背景知識Python中時間日期格式化常用符號:%y兩位數(shù)的年份表示(00-99)%Y四位數(shù)的年份表示(000-9999)%m月份(01-12)%d月內(nèi)中的一天(01-31)%H24小時制小時數(shù)(0-23)%I12小時制小時數(shù)(01-12)%M分鐘數(shù)(00=59)%S秒(00-59)背景知識datetime類有很多參數(shù),datetime(year,month,day[,hour[,minute[,second[,microsecond[,tzinfo]]]]]),返回年月日,時分秒。datetime.datetime.now():返回當(dāng)前系統(tǒng)時間。datetime.datetime.now().date():返回當(dāng)前日期時間的日期部分。datetime.datetime.now().time():返回當(dāng)前日期時間的時間部分。datetime.datetime.strftime():由日期格式轉(zhuǎn)化為字符串格式。例如:>>>datetime.datetime.now().strftime('%b-%d-%Y%H:%M:%S')'Apr-16-201721:01:35'背景知識(八) isdigitisdigit()方法檢測字符串是否只由數(shù)字組成。1.isdigit()方法的語法:str.isdigit()2.返回值:如果字符串只包含數(shù)字則返回True否則返回False。解題思路身份證號碼是由18位數(shù)字組成的,前1、2位表示:所在省份的代碼;第3、4位數(shù)字表示:所在城市的代碼;第5、6位數(shù)字表示:所在區(qū)縣的代碼;第7~14位數(shù)字表示:出生年、月、日(0位是年,11.12位是月,13.14位是日);第15、16位數(shù)字表示:所在地的派出所的代碼;第17位數(shù)字表示:性別,奇數(shù)表示男性,偶數(shù)表示女性;第18位數(shù)字是:校檢碼。校檢碼可以是0~9的數(shù)字,有時也用X表示。首先判斷輸入的身份證格式是否正確,然后創(chuàng)建方法,取出身份證第7-14位作為出生日期,接著創(chuàng)建方法,判斷第17位是1還是2作為性別,再創(chuàng)建方法,取出出

溫馨提示

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

評論

0/150

提交評論