版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第3章數(shù)字類型和字符串數(shù)字類型數(shù)字類型的運算數(shù)學模塊字符串學習目標了解掌握熟悉掌握了解math模塊12熟悉數(shù)據(jù)類型的的運算掌握字符串的基本操作34掌握數(shù)字類型目錄?點擊查看本節(jié)相關(guān)知識點數(shù)字類型的運算3.23.1數(shù)字類型?點擊查看本節(jié)相關(guān)知識點3.3實例3:模擬商家收銀抹零行為3.4數(shù)學模塊-math目錄字符串3.63.5實例4:三天打魚兩天曬網(wǎng)實例5:過濾敏感詞3.7?點擊查看本節(jié)相關(guān)知識點知識架構(gòu)3.1數(shù)字類型1整型2浮點型3復數(shù)類型4布爾類型知識架構(gòu)1數(shù)值運算符2運算符優(yōu)先級3數(shù)字類型轉(zhuǎn)換3.2
數(shù)字類型的運算知識架構(gòu)3.6字符串1字符串的定義方式2字符串格式化3字符串操作符4字符串處理函數(shù)5字符串處理方法3.1數(shù)字類型什么是數(shù)字類型?表示數(shù)字或數(shù)值的數(shù)據(jù)類型稱為數(shù)字類型。
數(shù)字類型有哪些?整型(int)浮點型(float)復數(shù)類型(complex)布爾類型(bool)使用type()函數(shù)可以查看變量的類型。提示:3.1數(shù)字類型整型表示形式二進制:以“0B”或“0b”開頭(比如0b101)八進制:以“0o”或“0O”開頭(比如0o510)十進制:比如10、29、40十六進制:以“0x”或“0X”開頭(比如0xA7A)整型不同形式的轉(zhuǎn)換bin():十進制轉(zhuǎn)換為二進制,輸出形式是字符串oct():十進制轉(zhuǎn)換為八進制,輸出形式是字符串hex():十進制轉(zhuǎn)換為十六進制,輸入形式是字符串int()
:接收一個符合整型規(guī)范的字符串,并將字符串轉(zhuǎn)換為整型3.1數(shù)字類型浮點類型Python中浮點型一般以十進制表示,由整數(shù)和小數(shù)部分(可以是0)組成。對于很大或者很小的浮點型,可以使用科學計數(shù)法表示。Python中的浮點型是雙精度的,每個浮點型數(shù)據(jù)占8個字節(jié)(即64位)。復數(shù)類型復數(shù)由“實部”和“虛部”兩部分組成;實數(shù)部分和虛數(shù)部分都是浮點型;虛數(shù)部分后面必須有j或J。3.1數(shù)字類型布爾類型Python中的布爾類型只有True和False兩個取值;True對應(yīng)整數(shù)1,F(xiàn)alse對應(yīng)整數(shù)0。None;False;任何為0的數(shù)字類型,如0、0.0、0j;任何空序列,如''''、()、[];空字典,如{};用戶定義的類實例,如類中定義了__bool__()或者__len__()方法,并且該方法返回0或者布爾值False。等同于False的值:3.2數(shù)字類型的運算什么是運算符?運算符是告訴編譯程序執(zhí)行特定算術(shù)或邏輯操作的符號。
算術(shù)運算符賦值運算符比較運算符邏輯運算符成員運算符身份運算符數(shù)字運算符分類3.2數(shù)字類型的運算算術(shù)運算符運算符說明示例+加:使兩個操作數(shù)相加,獲取操作數(shù)的和a+b,結(jié)果為10-減:使兩個操作數(shù)相減,獲取操作數(shù)的差a–b,結(jié)果為-6*乘:使兩個操作數(shù)相乘,獲取操作數(shù)的積a*b,結(jié)果為16/除:使兩個操作數(shù)相除,獲取操作數(shù)的商a/b,結(jié)果為0.25//整除:使兩個操作數(shù)相除,獲取商的整數(shù)部分a//b,結(jié)果為0%取余:使兩個操作數(shù)相除,獲取余數(shù)a%b,結(jié)果為2**冪:使兩個操作數(shù)進行冪運算,獲取a的b次冪a**b,結(jié)果為2563.2數(shù)字類型的運算賦值運算符運算符說明示例=等:將右值賦給左值a=b,a為8+=加等:將左值加上右值的和賦給左值a+=b,a為10-=減等:將左值減去右值的差賦給左值a–=b,a為-6*=乘等:將左值乘以右值的積賦給左值a*=b,a為16/=除等:將左值除以右值的商賦給左值a/=b,a為0.25//=整除等:將左值整除右值的商的整數(shù)部分賦給左值a//=b,a為0%=取余等:將左值除以右值的余數(shù)賦給左值a%=b,a為23.2數(shù)字類型的運算比較運算符運算符說明示例==比較左值和右值,若兩者相同則為True,否則為Falsea==b不成立,結(jié)果為False!=比較左值和右值,若兩者不相同則為True,否則為Falsea!=b成立,結(jié)果為True>
比較左值和右值,若左值大于右值則為True,否則為Falsea>b不成立,結(jié)果為False<
比較左值和右值,若左值小于右值則為True,否則為Falsea<b成立,結(jié)果為True>=比較左值和右值,若左值大于或等于右值則為True,否則為Falsea>=b不成立,結(jié)果為False<=比較左值和右值,若左值小于或等于右值則為True,否則為Falsea<=b成立,結(jié)果為True==比較左值和右值,若兩者相同則為True,否則為Falsea==b不成立,結(jié)果為False3.2數(shù)字類型的運算邏輯運算符運算符說明示例or當用or運算符連接兩個操作數(shù)時,若左操作數(shù)的布爾值為True,則返回左操作數(shù),否則返回右操作數(shù)或其計算結(jié)果(若為表達式)2+3orNone結(jié)果為50or3+5
結(jié)果為8and當用and運算符連接兩個操作數(shù)時,若左操作數(shù)的布爾值為False,則返回左操作數(shù)或其計算結(jié)果(若為表達式),否則返回右操作數(shù)的執(zhí)行結(jié)果3-3and5結(jié)果為03-4and5
結(jié)果為5not當用not運算符時,若操作數(shù)的布爾值為False,則返回True,否則返回False
not(3-5)結(jié)果為Falsenot(False)
結(jié)果為True3.2數(shù)字類型的運算成員運算符運算符說明in如果指定元素在序列中,返回True,否則返回False
not
in如果指定元素不在序列中,返回True,否則返回False
身份運算符運算符說明is測試兩個對象的內(nèi)存地址是否相同,相同返回True,否則返回False
not
is測試兩個對象的內(nèi)存地址是否不同,不同返回True,否則返回False
3.2數(shù)字類型的運算運算符優(yōu)先級運算符說明or布爾“或”and布爾“與”not布爾“非”in,notin成員測試(字符串、列表、元組、字典中常用)is,isnot身份測試<,<=,>,>=,!=,==比較|按位或^按位異或&按位與<<,>>按位左移、按位右移+,-加法,減法*,/,%乘法、除法,取余+x,-x正負號~按位取反**指數(shù)高低3.2數(shù)字類型的運算數(shù)字類型的轉(zhuǎn)換Python內(nèi)置了一系列可強制類型轉(zhuǎn)換的函數(shù),保證用戶在有需求情況下,將目標數(shù)據(jù)轉(zhuǎn)換為指定類型。函數(shù)說明int()將浮點型、布爾類型和符合數(shù)值類型規(guī)范的字符串轉(zhuǎn)換為整型float()將整型和符合數(shù)值類型規(guī)范的字符串轉(zhuǎn)換為浮點型complex()將其它數(shù)值類型或符合數(shù)值類型規(guī)范的字符串轉(zhuǎn)換為復數(shù)類型bool()將任意類型轉(zhuǎn)換為布爾類型3.3實例3:模擬商家收銀抹零行為模擬商家收銀抹零行為需求:逛超市購物結(jié)賬的時候,商家都會給顧客回饋一張清單小票,票面上的金額往往會精確到角或分。大部分商家通常會采用四舍五入的原則進行結(jié)算,不過有些商家為了讓利顧客,會將小數(shù)點后面的數(shù)字金額全部抹零。下面使用數(shù)字類型轉(zhuǎn)換實現(xiàn)收銀抹零行為。分析:使用input()函數(shù)模仿掃描商品二維碼的功能,依次錄入用戶輸入的金額,金額使用浮點數(shù)表示。當錄入完所有選購的商品之后,對這些金額進行相加運算,得到一個由浮點數(shù)表示的結(jié)果。對程序而言,抹零功能可通過浮點數(shù)到整數(shù)的轉(zhuǎn)換實現(xiàn)。掃描的第二個商品價格:10.5掃描的第二個商品價格:62.1掃描的第三個商品價格:36.9總計:1093.4數(shù)學模塊-math1.常數(shù)常數(shù)數(shù)學表示說明piπ圓周率,值為3.1415926535898ee自然對數(shù),值為2.7182818284590inf∞正無窮大,負無窮大為
-math.infnan
非浮點數(shù)標記,值為NaN在眾多數(shù)字運算中都會用到一些特別的常數(shù),例如,圓周率π、自然對數(shù)的底e等。3.4數(shù)學模塊-math2.數(shù)值表示函數(shù)函數(shù)數(shù)學表示說明copysign(x,
y)
復制符號位,用y的正負號替換x的正負號fabs(x)|x|返回x的絕對值factorial(x)x!返回x的階乘,x必須為正整數(shù)或0,否則會報錯floor(x)?x?向下取整,返回不大于x的最大整數(shù)fmod(x,
y)x%y返回x與y的模frexp(x)x
=
m
*2**e返回(m,
e),若
x
為0,則返回
(0.0,
0)fsum(iterable)
浮點數(shù)精確求和數(shù)學中除了基本的運算以外,還可以通過運算符號求一些特殊的數(shù)值,比如絕對值、階乘、最大公約數(shù)等。3.4數(shù)學模塊-math2.數(shù)值表示函數(shù)函數(shù)數(shù)學表示說明gcd(a,
b)
返回a和b的最大公約數(shù)isclose(a,
b)
比較a和b的相似性,相近返回True,否則返回Falseisfinite(x)
若x
既不是無窮大也不是NaN,則返回
True,否則返回
Falseisinf(x)
若x是無窮大,則返回
True,否則返回
Falseisnan(x)
若x是NaN,則返回
True,否則返回
Falsegcd(a,
b)
返回a和b的最大公約數(shù)ldexp(x,
i)
返回
x
*
(2**i)modf(x)
返回x的小數(shù)和整數(shù)部分trunc(x)
返回x的整數(shù)部分。3.4數(shù)學模塊-math3.冪函數(shù)和對數(shù)函數(shù)函數(shù)數(shù)學表示說明exp(x)返回
e的x次冪expm1(x)返回
e的x次冪減去1log(x[,
base])返回
x
的自然對數(shù)log1p(x)ln(1+x)返回
1+x
的自然對數(shù)log2(x)log2x返回
x
的以2為底的對數(shù)log10(x)返回
x
的以10為底的對數(shù)pow(x,
y)返回x的y次冪sqrt(x)返回x的平方根3.4數(shù)學模塊-math4.三角函數(shù)函數(shù)數(shù)學表示說明sin(x)sinx返回
x的正弦函數(shù)值cos(x)cosx返回
x的余弦函數(shù)值tan(x)tanx返回
x的正切函數(shù)值asin(x)arcsinx返回
x的反正弦函數(shù)值acos(x)arccosx返回
x的反余弦函數(shù)值atan(x)arctanx返回
x的反正切函數(shù)值atan2(y,x)arctany/x返回
y/x的反正切函數(shù)值3.4數(shù)學模塊-math5.高等特殊函數(shù)函數(shù)說明math.erf(x)高斯誤差函數(shù)math.erfc(x)余補高斯誤差函數(shù)math.gamma(x)伽瑪函數(shù),也叫歐拉第二積分函數(shù)math.lgamma(x)伽瑪函數(shù)的自然對數(shù)3.5實例4:三天打魚兩天曬網(wǎng)三天打魚兩天曬網(wǎng)需求:“三天打魚,兩
天曬網(wǎng)”
常以此來比喻一個人對學習或工作沒有恒心,經(jīng)常中斷,不能長久堅持。如果將1.0作為能力值的基數(shù),好好學習一天能力值相比前一天提高1%,懶惰懈怠一天能力值比前一天下降1%,可以得出“三天打魚,兩天曬網(wǎng)”的公式,請將下列公式轉(zhuǎn)換為代碼進行驗證。分析:
可以使用math模塊中的pow(x,
y)函數(shù)進行幾次方計算;使用math模塊函數(shù)之前,切記要導入math模塊
。3.6字符串字符串的定義方式單行字符串:單行字符串包含在一對單引號或一對雙引號中。多行字符串:多行字符串以一對三單引號或三雙引號作為邊界來表示。單引號括起的字符串中可以包含雙引號,但不能直接包含單引號。3.6字符串什么是字符串格式化?使用格式符(%)對字符串格式化使用format()方法對字符串格式化簡單的說,字符串格式化,指的是就是按照一定的格式輸出字符串。如何對字符串格式化?想一想:若希望程序輸出如下內(nèi)容,你會怎么做?
電腦Mac:IP地址為192.168.1.12,端口為8888。注:橫線位置的內(nèi)容是動態(tài)變化的。3.6字符串一、使用格式符%對字符串格式化以格式符%對字符串格式化時,%用于為真實值預留位置,并說明真實值應(yīng)該呈現(xiàn)的格式。常見的格式符格式符數(shù)據(jù)類型%c
字符%s
字符串%i或%d
有符號十進制整數(shù)%o
八進制整數(shù)%x
十六進制整數(shù)(小寫)%X
十六進制整數(shù)(大寫)格式符數(shù)據(jù)類型%e索引符號(小寫e)%E索引符號(大寫E)%f
十進制浮點數(shù)(小寫)%F十進制浮點數(shù)(大寫)%g浮點數(shù)或指數(shù)(%f或%e)%G
浮點數(shù)或指數(shù)(%F或%E)3.6字符串二、使用format()方法對字符串格式化<模板字符串>.format(<參數(shù)列表>)模板字符串由“”和“{}”組成,“{}”的作用和%相同,用來控制修改字符串中插入值位置。如果模板字符串中有多個“{}”,并且“{}”內(nèi)沒有指定任何序號(從0開始編號),則默認按照“{}”出現(xiàn)的順序分別用參數(shù)進行替換。
如果模板字符串中的“{}”明確使用了參數(shù)的序號,則需要按照序號對應(yīng)的參數(shù)進行替換。示例1示例23.6字符串二、使用format()方法對字符串格式化模板字符串的花括號{
}中除了參數(shù)序號以外,還可以還有下列格式:{<參數(shù)序號>:<格式控制標記>}<填充>字段是一個字符,默認使用空格填充。<對齊>字段分別使用<、>和^三個符號表示左對齊、右對齊和居中對齊。<寬度>字段是指“{}”所設(shè)定的輸出字符串的寬度。例如:"{:10}".format(words)<,>用于顯示數(shù)字類型的千位分隔符。例如:'{0:,}'.format(31415926)<.精度>字段以小數(shù)點開頭。例如,"{:.5f}".format(3.1415926)<類型>字段用于控制整型和浮點型的格式規(guī)則。例如,"{:c}".format(97)其中,格式控制標記包括:3.6字符串字符串操作符操作符說明示例+連接字符串a(chǎn)+b,結(jié)果為Helloitcast
*復制字符串a(chǎn)*2,結(jié)果為HelloHello
>,<,==,!=,>=,<=比較字符串a(chǎn)==b,結(jié)果為False
in,notin檢查字符串中是否存在或不存在某個子串a(chǎn)inb,結(jié)果為False
以
a=“Hello”,b=“itcast”為例:
3.6字符串字符串處理函數(shù)函數(shù)說明len()返回字符串的長度,或返回其它組合數(shù)據(jù)類型的元素個數(shù)str()返回任何類型所對應(yīng)的字符串形式ord()返回單字符對應(yīng)的Unicode編碼Python為開發(fā)者提供了很多內(nèi)置函數(shù),使用這些內(nèi)置函數(shù)可以便捷地對字符串執(zhí)行一些常見的操作,例如計算字符串的長度、返回單字符Unicode編碼等,常見處理函數(shù)如下:3.6字符串字符串處理方法(1)大小寫轉(zhuǎn)換lower():轉(zhuǎn)換為小寫upper():轉(zhuǎn)換為大寫(2)判斷字符串中字符的類型isdecimal()
:如果字符串中只包含十進制數(shù)字則返回True,否則返回False
isdigit()
:如果字符串中只包含數(shù)字則返回True,否則返回False
isnumeric()
:如果字符串中只包含數(shù)字則返回True,否則返回False
isalpha()
:如果字符串中至少有一個字符,并且所有字符都是字母則返回True,否則返回False
isalnum()
:如果字符串中至少有一個字符,并且所有字符都是字母或數(shù)字則返回True,否則返回False
(3)填充字符串ljust(width,fillchar=None)
:使用字符fillchar以右對齊方式填充字符串,使其長度變?yōu)閣idth;center(width,fillchar=None)
:使用字符fillchar以居中對齊方式填充字符串,使其長度
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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)品品牌推廣與市場營銷合同3篇
- 二零二五年度水果種植基地土地流轉(zhuǎn)合同3篇
- 2024美團外賣店外賣配送區(qū)域合作合同范本3篇
- 2025年度零星土建工程合同糾紛調(diào)解合同4篇
- 二零二五版貴金屬保管與寄售服務(wù)合同2篇
- 2024中考語文復習方案原創(chuàng)閱讀議論文閱讀
- 2024這份簽訂勞動合同指南請查收
- 二零二五年度農(nóng)業(yè)科技合作合同會簽書3篇
- 二零二五年騰訊新聞客戶端品牌宣傳與推廣合同3篇
- 2025年度臨時倉儲空間共享租賃及增值服務(wù)合同4篇
- 常見老年慢性病防治與護理課件整理
- 履約情況證明(共6篇)
- 云南省迪慶藏族自治州各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會明細
- 設(shè)備機房出入登記表
- 六年級語文-文言文閱讀訓練題50篇-含答案
- 醫(yī)用冰箱溫度登記表
- 零售學(第二版)第01章零售導論
- 大學植物生理學經(jīng)典05植物光合作用
- 口袋妖怪白金光圖文攻略2周目
- 光伏發(fā)電站集中監(jiān)控系統(tǒng)通信及數(shù)據(jù)標準
- 三年級下冊生字組詞(帶拼音)
評論
0/150
提交評論