python編程基礎(chǔ)知識(shí)基本數(shù)據(jù)類(lèi)型_第1頁(yè)
python編程基礎(chǔ)知識(shí)基本數(shù)據(jù)類(lèi)型_第2頁(yè)
python編程基礎(chǔ)知識(shí)基本數(shù)據(jù)類(lèi)型_第3頁(yè)
python編程基礎(chǔ)知識(shí)基本數(shù)據(jù)類(lèi)型_第4頁(yè)
python編程基礎(chǔ)知識(shí)基本數(shù)據(jù)類(lèi)型_第5頁(yè)
已閱讀5頁(yè),還剩66頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

.,2基本數(shù)據(jù)類(lèi)型,.,常用內(nèi)置對(duì)象,Python的常用內(nèi)置對(duì)象,.,續(xù)表,Python的常用內(nèi)置對(duì)象,.,在Python中,不需要事先聲明變量名及其類(lèi)型,直接賦值即可創(chuàng)建各種類(lèi)型的對(duì)象變量。這一點(diǎn)適用于Python任意類(lèi)型的對(duì)象。例如:x=3創(chuàng)建了整型變量x,并賦值為3,再例如語(yǔ)句x=Helloworld.創(chuàng)建了字符串變量x,并賦值為Helloworld.,Python的常用內(nèi)置對(duì)象,.,Python屬于強(qiáng)類(lèi)型編程語(yǔ)言,解釋器會(huì)根據(jù)賦值或運(yùn)算來(lái)自動(dòng)推斷變量類(lèi)型。Python還是一種動(dòng)態(tài)類(lèi)型語(yǔ)言,變量的類(lèi)型可以隨時(shí)變化。x=3print(type(x)x=Helloworld.print(type(x)#查看變量類(lèi)型x=1,2,3print(type(x)isinstance(3,int)#測(cè)試對(duì)象是否是某個(gè)類(lèi)型的實(shí)例Trueisinstance(Helloworld,str)True,Python的常用內(nèi)置對(duì)象,.,數(shù)字類(lèi)型,.,數(shù)字類(lèi)型,程序元素:010/10,存在多種可能表示十進(jìn)制整數(shù)值10類(lèi)似人名一樣的字符串?dāng)?shù)字類(lèi)型對(duì)Python語(yǔ)言中數(shù)字的表示和使用進(jìn)行了定義和規(guī)范,.,數(shù)字類(lèi)型,Python語(yǔ)言包括三種數(shù)字類(lèi)型整數(shù)類(lèi)型浮點(diǎn)數(shù)類(lèi)型復(fù)數(shù)類(lèi)型,.,整數(shù)類(lèi)型,示例1010,99,-2170 x9a,-0X89(0 x,0X開(kāi)頭表示16進(jìn)制數(shù))0b010,-0B101(0b,0B開(kāi)頭表示2進(jìn)制數(shù))0o123,-0O456(0o,0O開(kāi)頭表示8進(jìn)制數(shù)),.,浮點(diǎn)數(shù)類(lèi)型,帶有小數(shù)點(diǎn)及小數(shù)的數(shù)字Python語(yǔ)言中浮點(diǎn)數(shù)的數(shù)值范圍存在限制,小數(shù)精度也存在限制。這種限制與在不同計(jì)算機(jī)系統(tǒng)有關(guān),.,浮點(diǎn)數(shù)類(lèi)型,示例0.0,-77.,-2.1796e4,4.3e-3,9.6E5(科學(xué)計(jì)數(shù)法)科學(xué)計(jì)數(shù)法使用字母“e”或者“E”作為冪的符號(hào),以10為基數(shù)??茖W(xué)計(jì)數(shù)法含義如下:e=a*10b,.,復(fù)數(shù)類(lèi)型,與數(shù)學(xué)中的復(fù)數(shù)概念一致,z=a+bj,a是實(shí)數(shù)部分,b是虛數(shù)部分,a和b都是浮點(diǎn)類(lèi)型,虛數(shù)部分用j或者J標(biāo)識(shí)示例:12.3+4j,-5.6+7j,.,復(fù)數(shù)類(lèi)型,z=1.23e-4+5.6e+89j(實(shí)部和虛部是什么?)對(duì)于復(fù)數(shù)z,可以用z.real獲得實(shí)數(shù)部分,z.imag獲得虛數(shù)部分z.real=0.000123z.imag=5.6e+89,.,數(shù)字類(lèi)型的運(yùn)算及操作,.,三種類(lèi)型存在一種逐漸“擴(kuò)展”的關(guān)系:整數(shù)-浮點(diǎn)數(shù)-復(fù)數(shù)(整數(shù)是浮點(diǎn)數(shù)特例,浮點(diǎn)數(shù)是復(fù)數(shù)特例)不同數(shù)字類(lèi)型之間可以進(jìn)行混合運(yùn)算,運(yùn)算后生成結(jié)果為最寬類(lèi)型123+4.0=127.0(整數(shù)+浮點(diǎn)數(shù)=浮點(diǎn)數(shù)),內(nèi)置的數(shù)值運(yùn)算操作符,.,內(nèi)置的數(shù)值運(yùn)算操作符,.,內(nèi)置的數(shù)值運(yùn)算函數(shù),Python解釋器提供了一些內(nèi)置函數(shù)(BIF),這些內(nèi)置函數(shù)中,有6個(gè)函數(shù)與數(shù)值運(yùn)算相關(guān),.,打開(kāi)IDLE程序1:pow(2,10),pow(2,15)程序2:pow(2,1000)程序3:pow(2,pow(2,15),內(nèi)置的數(shù)值運(yùn)算函數(shù),.,數(shù)字類(lèi)型的轉(zhuǎn)換,數(shù)值運(yùn)算操作符可以隱式地轉(zhuǎn)換輸出結(jié)果的數(shù)字類(lèi)型例如,兩個(gè)整數(shù)采用運(yùn)算符“/”的除法將可能輸出浮點(diǎn)數(shù)結(jié)果。此外,通過(guò)內(nèi)置的數(shù)字類(lèi)型轉(zhuǎn)換函數(shù)可以顯式地在數(shù)字類(lèi)型之間進(jìn)行轉(zhuǎn)換,.,數(shù)字類(lèi)型的轉(zhuǎn)換,三種類(lèi)型可以相互轉(zhuǎn)換函數(shù):int(),float(),complex()示例:int(4.5)=4(直接去掉小數(shù)部分)float(4)=4.0(增加小數(shù)部分)complex(4)=4+0J,.,數(shù)字類(lèi)型的判斷,函數(shù):type(x),返回x的類(lèi)型,適用于所有類(lèi)型的判斷示例:,.,math庫(kù)的使用,importmath,.,math庫(kù)概述,math庫(kù)是Python提供的內(nèi)置數(shù)學(xué)類(lèi)函數(shù)庫(kù)math庫(kù)不支持復(fù)數(shù)類(lèi)型math庫(kù)一共提供了4個(gè)數(shù)學(xué)常數(shù)和44個(gè)函數(shù)。44個(gè)函數(shù)共分為4類(lèi),包括:16個(gè)數(shù)值表示函數(shù)、8個(gè)冪對(duì)數(shù)函數(shù)、16個(gè)三角對(duì)數(shù)函數(shù)和4個(gè)高等特殊函數(shù),.,math庫(kù)概述,首先使用保留字import引用該庫(kù)第一種:importmath對(duì)math庫(kù)中函數(shù)采用math.()形式使用,第二種,frommathimport對(duì)math庫(kù)中函數(shù)可以直接采用()形式使用,importmathmath.ceil(10.2)11,frommathimportfloorfloor(10.2)10,.,math庫(kù)解析,math庫(kù)包括4個(gè)數(shù)學(xué)常數(shù),.,math庫(kù)解析,math庫(kù)包括16個(gè)數(shù)值表示函數(shù),.,math庫(kù)解析,math庫(kù)中包括8個(gè)冪對(duì)數(shù)函數(shù),.,math庫(kù)解析,math庫(kù)包括六個(gè)“三角雙曲函數(shù),.,math庫(kù)解析,math庫(kù)包括4個(gè)高等特殊函數(shù),.,實(shí)例3:天天向上的力量,.,實(shí)例代碼3.1:天天向上,一年365天,以第1天的能力值為基數(shù),記為1.0,當(dāng)好好學(xué)習(xí)時(shí)能力值相比前一天提高1,當(dāng)沒(méi)有學(xué)習(xí)時(shí)由于遺忘等原因能力值相比前一天下降1。每天努力和每天放任,一年下來(lái)的能力值相差多少呢?,.,實(shí)例代碼3.1:天天向上,運(yùn)行結(jié)果如下,每天努力1,一年下來(lái)將提高44%,好像不多?請(qǐng)繼續(xù)分析。,.,實(shí)例代碼3.2:天天向上,一年365天,如果好好學(xué)習(xí)時(shí)能力值相比前一天提高5,當(dāng)放任時(shí)相比前一天下降5。效果相差多少呢?,.,實(shí)例代碼3.2:天天向上,運(yùn)行結(jié)果如下,每天努力5,一年下來(lái)將提高6倍!這不容小覷了吧?,.,實(shí)例代碼3.3:天天向上,一年365天,如果好好學(xué)習(xí)時(shí)能力值相比前一天提高1%,當(dāng)放任時(shí)相比前一天下降1%。效果相差多少呢?,.,實(shí)例代碼3.3:天天向上,運(yùn)行結(jié)果如下,每天努力1%,一年下來(lái)將提高37倍。這個(gè)相當(dāng)驚人吧!,.,實(shí)例代碼3.4:天天向上,一年365天,一周5個(gè)工作日,如果每個(gè)工作日都很努力,可以提高1%,僅在周末放任一下,能力值每天下降1%,效果如何呢?,.,實(shí)例代碼3.4:天天向上,猜猜運(yùn)行結(jié)果?每周努力5天,而不是每天,一年下來(lái),水平僅是初始的4.63倍!與每天堅(jiān)持所提高的237倍相去甚遠(yuǎn),.,實(shí)例代碼3.5:天天向上,如果對(duì)實(shí)例代碼3.4的結(jié)果感到意外,那自然會(huì)產(chǎn)生如下問(wèn)題:每周工作5天,休息2天,休息日水平下降0.01,工作日要努力到什么程度一年后的水平才與每天努力1%所取得的效果一樣呢?,.,實(shí)例代碼3.5:天天向上,如果每周連續(xù)努力5天,休息2天,為了達(dá)到每天努力1%所達(dá)到的的水平,則就需要在工作日將提高的程度達(dá)到約2%,即要努力1倍才僅是為了休息2天。這就是天天向上的力量!,.,字符串類(lèi)型及其操作,.,字符串屬于不可變序列,是用單引號(hào)、雙引號(hào)或三引號(hào)括起來(lái)的符號(hào)序列單引號(hào)、雙引號(hào)、三單引號(hào)、三雙引號(hào)可以互相嵌套,用來(lái)表示復(fù)雜字符串a(chǎn)bc、123、中國(guó)、Python、Tomsaid,Letsgo空串表示為或三引號(hào)或表示的字符串可以換行,支持排版較為復(fù)雜的字符串;三引號(hào)還可以在程序中表示較長(zhǎng)的注釋。,1.4.4字符串,.,字符串是一個(gè)字符序列:字符串最左端位置標(biāo)記為0,依次增加。字符串中的編號(hào)叫做“索引”,索引輔助訪問(wèn)字符串中的特定位置格式為,字符串索引與訪問(wèn),.,Python中字符串索引從0開(kāi)始,一個(gè)長(zhǎng)度為L(zhǎng)的字符串最后一個(gè)字符的位置是L-1Python同時(shí)允許使用負(fù)數(shù)從字符串右邊末尾向左邊進(jìn)行反向索引,最右側(cè)索引值是-1,字符串索引與訪問(wèn),.,可以通過(guò)兩個(gè)索引值確定一個(gè)位置范圍,返回這個(gè)范圍的子串格式::start和end都是整數(shù)型數(shù)值,這個(gè)子序列從索引start開(kāi)始直到索引end結(jié)束,但不包括end位置。,字符串索引與訪問(wèn),.,字符串之間可以通過(guò)+或*進(jìn)行連接加法操作(+)將兩個(gè)字符串連接成為一個(gè)新的字符串乘法操作(*)生成一個(gè)由其本身字符串重復(fù)連接而成的字符串,字符串的連接與重復(fù),.,len()函數(shù)能否返回一個(gè)字符串的長(zhǎng)度,字符串的長(zhǎng)度,.,大多數(shù)數(shù)據(jù)類(lèi)型都可以通過(guò)str()函數(shù)轉(zhuǎn)換為字符串,int(),float(),str(),字符串的轉(zhuǎn)換,.,字符串使用實(shí)例,輸入一個(gè)月份數(shù)字,返回對(duì)應(yīng)月份名稱(chēng)縮寫(xiě)這個(gè)問(wèn)題的IPO模式是:輸入:輸入一個(gè)表示月份的數(shù)字(1-12)處理:利用字符串基本操作實(shí)現(xiàn)該功能輸出:輸入數(shù)字對(duì)應(yīng)月份名稱(chēng)的縮寫(xiě),.,字符串使用實(shí)例,將所有月份名稱(chēng)縮寫(xiě)存儲(chǔ)在字符串中在字符串中截取適當(dāng)?shù)淖哟畞?lái)查找特定月份找出在哪里切割子串每個(gè)月份的縮寫(xiě)都由3個(gè)字母組成,如果pos表示一個(gè)月份的第一個(gè)字母,則monthspos:pos+3表示這個(gè)月份的縮寫(xiě),即:monthAbbrev=monthspos:pos+3,.,字符串使用實(shí)例,.,用轉(zhuǎn)義符()可以在字符串中表達(dá)一些不可直接打印的信息。例如:用n表示換行字符串HellonWorldnnGoodbye32n用print()函數(shù)打印后的輸出效果如下:HelloWorldGoodbye32,字符串轉(zhuǎn)義字符(),.,常用轉(zhuǎn)義字符,字符串轉(zhuǎn)義字符(),.,內(nèi)置的字符串處理函數(shù),.,內(nèi)置的字符串處理方法,.,內(nèi)置的字符串處理方法,.,字符串實(shí)例:愷撒密碼,微實(shí)例3.2:愷撒密碼。凱撒密碼是古羅馬用來(lái)對(duì)軍事情報(bào)進(jìn)行加密的算法,采用替換方法進(jìn)行加密,對(duì)信息中的每一個(gè)英文字符循環(huán)替換為字母表中該字符后面第三個(gè)字符,對(duì)應(yīng)關(guān)系如下:原文:ABCDEFGHIJKLMNOPQRSTUVWXYZ密文:DEFGHIJKLMNOPQRSTUVWXYZABC原文字符P,其密文字符C滿足如下條件:C=(P+3)mod26解密方法反之,滿足:P=(C3)mod26,.,請(qǐng)輸入明文:pythonisanexcellentlanguage.sbwkrqlvdqhafhoohqwodqjxdjh.,運(yùn)行結(jié)果如下:,字符串實(shí)例:愷撒密碼,.,字符串類(lèi)型的格式化,.,60,字符串格式化Python支持格式化字符串的輸出。盡管這樣可能會(huì)用到非常復(fù)雜的表達(dá)式,但最基本的用法是將一個(gè)值插入到有字符串格式符的模板中。在Python中,字符串格式化使用與C語(yǔ)言中printf函數(shù)一樣的語(yǔ)法。print(我的名字是%s年齡是%d%(xmj,41)Python用一個(gè)元祖將多個(gè)值傳遞給模板,每個(gè)值對(duì)應(yīng)一個(gè)字符串格式符。上例將xmj插入到%s處,41插入到%d處。所以輸出結(jié)果:我的名字是xmj年齡是41,字符串的%格式化方法,.,61,字符串的%格式化方法,.,字符串format()方法的基本使用格式是:.format(),使用format()進(jìn)行字符串格式化,.,format()方法中模板字符串的槽除了包括參數(shù)序號(hào),還可以包括格式控制信息。此時(shí),槽的內(nèi)部樣式如下::其中,格式控制標(biāo)記用來(lái)控制參數(shù)顯示時(shí)的格式。格式控制標(biāo)記包括:,6個(gè)字段,這些字段都是可選的,可以組合使用,這里按照使用方式逐一介紹。,使用format()進(jìn)行字符串格式化,.,利用print()函數(shù)實(shí)現(xiàn)簡(jiǎn)單的非刷新文本進(jìn)度條基本思想是按照任務(wù)執(zhí)行百分比將整個(gè)任務(wù)劃分為100個(gè)單位,每執(zhí)行N%輸出一次進(jìn)度條。每一行輸出包含進(jìn)度百分比,代表已完成的部分(*)和未完成的部分(.)的兩種字符,以及一個(gè)跟隨完成度前進(jìn)的小箭頭,風(fēng)格如下:,%10*-.,字符串實(shí)例:文本進(jìn)度條,.,字符串實(shí)例:文本進(jìn)度條,.,-執(zhí)行開(kāi)始-,%100*-執(zhí)行結(jié)束-,程序的輸出效果如下圖:,字符串實(shí)例:文本進(jìn)度條,.,字符串實(shí)例,編寫(xiě)程序,輸出星號(hào)組成的菱形。foriinrange(n):print(0:+str(3*n)+).format(*i)foriinrange(n,0,-1):print(0:+str(3*n)+).format(*i),.,利用兩種方法打印九九乘法表,字符串實(shí)例:打印九九乘法表,.,布爾類(lèi)型,.,70,2.1.3布爾類(lèi)型,Python支持布爾類(lèi)型的數(shù)據(jù),布爾類(lèi)型只有True和False兩種值。and與運(yùn)算:只有兩個(gè)布爾值都為T(mén)rue時(shí),計(jì)算結(jié)果才為T(mén)rue。or或運(yùn)算:只要有一個(gè)布爾值為T(mén)rue,計(jì)算結(jié)果就是True。not非運(yùn)算:把True變?yōu)镕alse,或者把False變?yōu)門(mén)rue:在P

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論