《Python程序設(shè)計(jì)基礎(chǔ)》課件-第3章 基本數(shù)據(jù)類型_第1頁
《Python程序設(shè)計(jì)基礎(chǔ)》課件-第3章 基本數(shù)據(jù)類型_第2頁
《Python程序設(shè)計(jì)基礎(chǔ)》課件-第3章 基本數(shù)據(jù)類型_第3頁
《Python程序設(shè)計(jì)基礎(chǔ)》課件-第3章 基本數(shù)據(jù)類型_第4頁
《Python程序設(shè)計(jì)基礎(chǔ)》課件-第3章 基本數(shù)據(jù)類型_第5頁
已閱讀5頁,還剩68頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

目錄CONTENT01020304數(shù)字類型字符串類型布爾數(shù)據(jù)類型類型判斷和類型轉(zhuǎn)換05math庫的使用01數(shù)字類型表示數(shù)字或數(shù)值的數(shù)據(jù)類型稱為數(shù)字類型,Python語言提供3種數(shù)字類型:整數(shù)、浮點(diǎn)數(shù)和復(fù)數(shù),分別對(duì)應(yīng)數(shù)學(xué)中的整數(shù)、實(shí)數(shù)和復(fù)數(shù)。3.1.1整數(shù)類型Python中整數(shù)類型與數(shù)學(xué)中整數(shù)的概念一致,整數(shù)類型共有4種進(jìn)制表示:十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制。十進(jìn)制字面常量可以由第一個(gè)數(shù)字為非零數(shù)字的數(shù)字序列表示。為了表示八進(jìn)制字面常量,可以使用0o后面帶一個(gè)八進(jìn)制數(shù)字(0~7)序列。為了表示十六進(jìn)制常量,可以使用0x后面帶一個(gè)十六進(jìn)制數(shù)字序列(0~9和A~F,可以使用大寫或小寫字母)。與C語言中所指的整型規(guī)則相同。

MORETHENTEMPLATE Python中整數(shù)類型與數(shù)學(xué)中整數(shù)的概念一致,整數(shù)類型共有4種進(jìn)制表示:十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制。

十進(jìn)制字面常量可以由第一個(gè)數(shù)字為非零數(shù)字的數(shù)字序列表示。為了表示八進(jìn)制字面常量,可以使用0o后面帶一個(gè)八進(jìn)制數(shù)字(0~7)序列。

為了表示十六進(jìn)制常量,可以使用0x后面帶一個(gè)十六進(jìn)制數(shù)字序列(0~9和A~F,可以使用大寫或小寫字母)。

與C語言中所指的整型規(guī)則相同。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院43.1.1整數(shù)類型

MORETHENTEMPLATE

在python2時(shí)代,整型有int類型和long長整型,長整型不存在溢出問題,即可以存放任意大小的整數(shù)。在python3后,統(tǒng)一使用了長整型。 Python中,長整型沒有預(yù)定義的大小限制,只要內(nèi)存允許,長整型可以無限大。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院53.1.1整數(shù)類型十進(jìn)制:默認(rèn)情況,例如123,-456。二進(jìn)制:0b或0B,由字符0到1組成,例如,0b1101,0B1101。八進(jìn)制:0o或0O,由字符0到7組成,例如,0o761,0O761;十六進(jìn)制:0x或0X,由字符0到9、a到f、A到F組成,例如,0xABC,0XABC。

MORETHENTEMPLATEfloat(浮點(diǎn)型)是Python基本數(shù)據(jù)類型中的一種,Python的浮點(diǎn)數(shù)類似數(shù)學(xué)中的小數(shù)和C語言中的double類型,表示帶有小數(shù)的數(shù)值。浮點(diǎn)數(shù)由兩種表示方法:十進(jìn)制表示和科學(xué)技術(shù)法表示,例如:1.0、2.3、3.14、56e4、12E2。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院63.1.2浮點(diǎn)數(shù)類型浮點(diǎn)數(shù)和整數(shù)在計(jì)算機(jī)內(nèi)部存儲(chǔ)的方式是不同的,整數(shù)運(yùn)算永遠(yuǎn)是精確的,然而浮點(diǎn)數(shù)的運(yùn)算則可能會(huì)有四舍五入的誤差。比如觀察以下運(yùn)算,在數(shù)學(xué)中很容易得出結(jié)果應(yīng)該是0.8965,而使用程序運(yùn)算得出的結(jié)果卻是:0.8965000000000001。>>>a=1.25>>>b=0.3535>>>print(a-b)0.8965000000000001#輸出:0.8965000000000001

MORETHENTEMPLATE整型和浮點(diǎn)型運(yùn)算的結(jié)果也是浮點(diǎn)型。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院73.1.2浮點(diǎn)數(shù)類型>>>a=1>>>b=0.25>>>print(a+b,type(a+b))#輸出:1.25<class'float'>>>>print(a-b,type(a-b))#輸出:0.75<class'float'>>>>print(a*b,type(a*b))#輸出:0.25<class'float'>>>>print(a/b,type(a/b))#輸出:4.0<class'float'>

MORETHENTEMPLATE復(fù)數(shù)類型表示數(shù)學(xué)中的復(fù)數(shù)。Python語言中,復(fù)數(shù)的虛數(shù)部分通過后綴“J”或“j”來表示,例如:1.58+4j或4.87+1J。虛數(shù)由實(shí)部和虛部兩個(gè)部分構(gòu)成:real+imag(虛部后綴為j或J)浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院83.1.3復(fù)數(shù)類型

MORETHENTEMPLATE其中實(shí)數(shù)部分和虛數(shù)部分都為浮點(diǎn)數(shù)。例如定義一個(gè)虛數(shù),分別輸出它的實(shí)部和虛部:浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院93.1.3復(fù)數(shù)類型>>>a=4.7+0.666j#定義一個(gè)虛數(shù)>>>print(a)#輸出這個(gè)虛數(shù)(4.7+0.666j)>>>print(a.real)#輸出實(shí)部4.7>>>print(a.imag)#輸出虛部0.666>>>print(a.conjugate())#輸出該復(fù)數(shù)的共軛復(fù)數(shù)(4.7-0.666j)其中,conjugate()為complex類的內(nèi)置函數(shù),作用為輸出復(fù)數(shù)的共軛復(fù)數(shù)。

MORETHENTEMPLATEcomplex()函數(shù)用于創(chuàng)建一個(gè)復(fù)數(shù)或者將一個(gè)數(shù)或字符串轉(zhuǎn)換為復(fù)數(shù)形式,其返回值為一個(gè)復(fù)數(shù)。該函數(shù)的語法為:classcomplex(real,imag)其中,real可以為int、long、float或字符串類型;而image只能為int、long、或float類型。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院103.1.3復(fù)數(shù)類型-complex()函數(shù)

MORETHENTEMPLATE注意:如果第一個(gè)參數(shù)為字符串,第二個(gè)參數(shù)必須省略,若第一個(gè)參數(shù)為其他類型,則第二個(gè)參數(shù)可以選擇。實(shí)例如下:浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院113.1.3復(fù)數(shù)類型-complex()函數(shù)>>>complex(1,2)(1+2j)>>>complex(1)#數(shù)字(1+0j)>>>complex("1")#當(dāng)做字符串處理(1+0j)#注意:這個(gè)地方在"+"號(hào)兩邊不能有空格,也就是不能寫成"1+2j",應(yīng)該是"1+2j",否則會(huì)報(bào)錯(cuò)>>>complex("1+2j")(1+2j)

MORETHENTEMPLATE數(shù)值運(yùn)算操作符如下所示:浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院123.1.4數(shù)值內(nèi)置運(yùn)算操作符操作符及使用描述x+y加,x與y之和x–y減,x與y之差x*y乘,x與y之積x/y除,x與y之商10/3結(jié)果是3.3333333333333335x//y整數(shù)除,x與y之整數(shù)商10//3結(jié)果是3+xx本身-xx的負(fù)值x%y余數(shù),模運(yùn)算10%3結(jié)果是1x**y冪運(yùn)算,x的y次冪,xy

MORETHENTEMPLATE=還可與其他運(yùn)算符(包括算術(shù)運(yùn)算符、位運(yùn)算符和邏輯運(yùn)算符)相結(jié)合,擴(kuò)展成為功能更加強(qiáng)大的賦值運(yùn)算符浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院133.1.4數(shù)值內(nèi)置運(yùn)算操作符運(yùn)算符說明用法舉例等價(jià)形式=最基本的賦值運(yùn)算x=yx=y+=加賦值x+=yx=x+y-=減賦值x-=yx=x-y*=乘賦值x*=yx=x*y/=除賦值x/=yx=x/y%=取余數(shù)賦值x%=yx=x%y**=冪賦值x**=yx=x**y//=取整數(shù)賦值x//=yx=x//y&=按位與賦值x&=yx=x&y|=按位或賦值x|=yx=x|y^=按位異或賦值x^=yx=x^y<<=左移賦值x<<=yx=x<<y,這里的y指的是左移的位數(shù)>>=右移賦值x>>=yx=x>>y,這里的y指的是右移的位數(shù)

MORETHENTEMPLATE數(shù)值內(nèi)置函數(shù)如下浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院143.1.5數(shù)值內(nèi)置函數(shù)函數(shù)及使用描述abs(x)絕對(duì)值,x的絕對(duì)值abs(-10.01)結(jié)果為10.01divmod(x,y)商余,(x//y,x%y),同時(shí)輸出商和余數(shù)divmod(10,3)結(jié)果為(3,1)pow(x,y[,z])冪余,(x**y)%z,[…]表示參數(shù)z可省略pow(3,pow(3,99),10000)結(jié)果為4587round(x[,d])四舍五入,d是保留小數(shù)位數(shù),默認(rèn)值為0round(-10.123,2)結(jié)果為-10.12max(x1,x2,…,xn)最大值,返回x1,x2,…,xn中的最大值,n不限max(1,9,5,4,3)結(jié)果為9min(x1,x2,…,xn)最小值,返回x1,x2,…,xn中的最小值,n不限min(1,9,5,4,3)結(jié)果為1int(x)將x變成整數(shù),舍棄小數(shù)部分int(123.45)結(jié)果為123;int(“123”)結(jié)果為123float(x)將x變成浮點(diǎn)數(shù),增加小數(shù)部分float(12)結(jié)果為12.0;float(“1.23”)結(jié)果為1.23complex(x)將x變成復(fù)數(shù),增加虛數(shù)部分complex(4)結(jié)果為4+0j02字符串類型數(shù)據(jù)在Python3中,所有的字符串都是Unicode字符串。

MORETHENTEMPLATE字符串的表示:字符串是Python中最常用的數(shù)據(jù)類型。我們可以使用引號(hào)(單引號(hào)、雙引號(hào)或者三引號(hào))來創(chuàng)建字符串。創(chuàng)建字符串很簡單,只要為變量分配一個(gè)值即可。例如:>>>var1='HelloWorld!'>>>var2="PythonRunoob">>>var3='''HelloWorld!'''在Python中提供了這幾種方法,使得使用起來更加方便靈活。如:>>>var4='''Isaid:"HelloWorld!"'''浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院163.2.1字符串的表示、索引和切片

MORETHENTEMPLATE在這里要注意的是:1)在Python中沒有類似C語言中char這種類型的字符串,也就是說單字符在Python中也是作為一個(gè)字符串使用。2)Python中的字符串一旦聲明,是不能進(jìn)行更改的,即不能通過對(duì)某一位置重新賦值改變內(nèi)容。如:浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院173.2.1字符串的表示、索引和切片>>>s='HelloWorld!'>>>s[0]='k'Traceback(mostrecentcalllast):File"<pyshell#21>",line1,in<module>s[0]='k'TypeError:'str'objectdoesnotsupportitemassignment

MORETHENTEMPLATE字符串索引:字符串是字符的有序集合,可以通過其位置來獲得具體的元素。在python中,字符串中的字符是通過方括號(hào)[]索引來提取的,索引從0開始。python可以取負(fù)值,表示從末尾提取,最后一個(gè)為-1,倒數(shù)第二個(gè)為-2,即程序認(rèn)為可以從結(jié)束處反向計(jì)數(shù)。如str[0]獲取第一個(gè)元素,str[-2]獲取倒數(shù)第二個(gè)元素。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院183.2.1字符串的表示、索引和切片

MORETHENTEMPLATE字符串切片:Python訪問子字符串,可以使用方括號(hào)[]來截取字符串,字符串的截取的語法格式如下:變量[頭下標(biāo):尾下標(biāo)]#尾下標(biāo)不包括在提取字符串內(nèi)如果沒有指定值,則分片的邊界默認(rèn)為0和序列的長度浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院193.2.1字符串的表示、索引和切片

MORETHENTEMPLATE浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院203.2.1字符串的表示、索引和切片>>>str='HelloWorld!'>>>str[1:3]'el'>>>str[1:]'elloWorld!'>>>str[:3]'Hel'>>>str[:-1]'HelloWorld'>>>str[-3:-1]'ld'

MORETHENTEMPLATE分片的時(shí)候還可以增加一個(gè)步長,如str[::2]輸出的結(jié)果為:“HloWrd”。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院213.2.1字符串的表示、索引和切片>>>str[::2]'HloWrd'>>>str[::-1]'!dlroWolleH'>>>str[::-2]'!lole'

MORETHENTEMPLATE下表實(shí)例變量a值為字符串"Hello",b變量值為"Python":浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院223.2.2字符串操作符操作符描述實(shí)例+字符串連接a+b輸出結(jié)果:HelloPython*重復(fù)輸出字符串a(chǎn)*2輸出結(jié)果:HelloHello[]通過索引獲取字符串中字符a[1]輸出結(jié)果

e[:]截取字符串中的一部分,遵循左閉右開原則,str[0:2]是不包含第3個(gè)字符的。a[1:4]輸出結(jié)果

ellin成員運(yùn)算符-如果字符串中包含給定的字符返回True'H'ina

輸出結(jié)果Truenotin成員運(yùn)算符-如果字符串中不包含給定的字符返回True'M'notina

輸出結(jié)果Truer/R原始字符串-原始字符串:所有的字符串都是直接按照字面的意思來使用,沒有轉(zhuǎn)義特殊或不能打印的字符。

原始字符串除在字符串的第一個(gè)引號(hào)前加上字母

r(可以大小寫)以外,與普通字符串有著幾乎完全相同的語法。print(r'\n'

)print(R'\n'

)%格式字符串請(qǐng)看下一節(jié)內(nèi)容。

MORETHENTEMPLATE【實(shí)例3.1】浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院233.2.2字符串操作符a="Hello"b="Python"print("a+b輸出結(jié)果:",a+b)print("a*2輸出結(jié)果:",a*2)print("a[1]輸出結(jié)果:",a[1])print("a[1:4]輸出結(jié)果:",a[1:4])

if("H"ina):print("H在變量a中")else:print("H不在變量a中")

if("M"notina):print("M不在變量a中")else:print("M在變量a中")

print(r'\n')print(R'\n')

MORETHENTEMPLATEPython的字符串常用內(nèi)建函數(shù)如下:浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院243.2.3字符串內(nèi)置函數(shù)方法描述str.lower()返回字符串str的副本,全部字符小寫str.upper()返回字符串str的副本,全部字符大寫str.islower()當(dāng)str所有字符都是小寫時(shí),返回True,否則Falsestr.isprintable()當(dāng)str所有字符都是可打印的,返回True,否則Falsestr.isnumeric()當(dāng)str所有字符都是數(shù)字字符時(shí),返回True,否則Falsestr.isspace()當(dāng)str所有字符都是空格,返回True,否則Falsestr.endswith(suffix[,start[,end]])str[start:end]以suffix結(jié)尾返回True,否則返回Falsestr.startswith(prefix[,start[,end]])str[start:end]以suffix開始返回True,否則返回Falsestr.split(sep=None,maxsplit=-1)返回一個(gè)列表,由str根據(jù)sep被分割的部分構(gòu)成str.count(sub[,start[,end]])返回str[start:end]中sub子串出現(xiàn)的次數(shù)str.replace(old,new[,count])返回字符串str的副本,所有old子串被替換為new,如果count給出,則前count次old出現(xiàn)被替換str.center(width[,fillchar])字符串居中函數(shù),詳見函數(shù)定義str.strip([chars])移除字符串頭尾指定的字符(默認(rèn)為空格或換行符)或字符序列str.zfill(width)返回字符串str的副本,長度為width,不足部分在左側(cè)添0str.format()返回字符串str的一種排版格式,后面將詳細(xì)介紹str.join(iterable)將序列中的元素以指定的字符連接生成一個(gè)新的字符串

MORETHENTEMPLATE浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院253.2.4字符串函數(shù)處理方法

MORETHENTEMPLATE浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院263.2.4字符串函數(shù)處理方法>>>b="hello"#兩邊有空格>>>b.strip()'hello'>>>b.lstrip()#去掉左邊的空格'hello'>>>b.rstrip()#去掉右邊的空格'hello'

MORETHENTEMPLATE浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院273.2.4字符串函數(shù)處理方法join()函數(shù):用“+”能夠拼接字符串,但不是什么情況下都能夠如愿的。比如,將列表中的每個(gè)字符(串)元素拼接成一個(gè)字符串,并且用某個(gè)符號(hào)連接,如果用“+”,就比較麻煩了,用字符串的join就比較容易實(shí)現(xiàn)。>>>b=''>>>c=b.split(".")>>>c['www','itdiffer','com']>>>".".join(c)''>>>"*".join(c)'www*itdiffer*com'

MORETHENTEMPLATE浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院283.2.4字符串函數(shù)處理方法count()函數(shù):返回字符串S中子串sub出現(xiàn)的次數(shù),可以指定從哪里開始計(jì)算(start)以及計(jì)算到哪里結(jié)束(end),索引從0開始計(jì)算,不包括end邊界。>>>print('xyabxyxy'.count('xy'))3>>>print('xyabxyxy'.count('xy',1))#次數(shù)2,因?yàn)閺膇ndex=1算起,即從'y'開始查找2>>>print('xyabxyxy'.count('xy',1,7))#次數(shù)1,因?yàn)椴话╡nd,所以查找的范圍為'yabxyx'1>>>print('xyabxyxy'.count('xy',1,8))#次數(shù)2,因?yàn)椴檎业姆秶鸀?yabxyxy'2浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院293.2.4字符串函數(shù)處理方法endswith和startswith函數(shù):endswith()檢查字符串S是否已suffix結(jié)尾,返回布爾值的True和False。suffix可以是一個(gè)元組(tuple)。可以指定起始start和結(jié)尾end的搜索邊界。同理startswith()用來判斷字符串S是否是以prefix開頭。>>>print('abcxyz'.endswith('xyz'))True

>>>print('abcxyz'.endswith('xyz',4))#False,因?yàn)樗阉鞣秶鸀?yz'False

>>>print('abcxyz'.endswith('xyz',0,5))#False,因?yàn)樗阉鞣秶鸀?abcxy'False>>>print('abcxyz'.endswith('xyz',0,6))True浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院303.2.4字符串函數(shù)處理方法replace()函數(shù):eplace()將字符串中的子串old替換為new字符串,如果給定count,則表示只替換前count個(gè)old子串。如果S中搜索不到子串old,則無法替換,直接返回字符串S(不創(chuàng)建新字符串對(duì)象)。>>>print('abcxyzoxy'.replace('xy','XY'))abcXYzoXY>>>print('abcxyzoxy'.replace('xy','XY',1))abcXYzoxy>>>print('abcxyzoxy'.replace('mn','XY',1))abcxyzoxy浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院313.2.5字符串中常見的轉(zhuǎn)義字符浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院323.2.6字符串類型的格式化字符串的格式化方法分為兩種,分別為占位符(%)和format方式。占位符(%)符

號(hào)描述%c格式化字符及其ASCII碼%s格式化字符串%d格式化整數(shù)%u格式化無符號(hào)整型%o格式化無符號(hào)八進(jìn)制數(shù)%x格式化無符號(hào)十六進(jìn)制數(shù)%X格式化無符號(hào)十六進(jìn)制數(shù)(大寫)%f格式化浮點(diǎn)數(shù)字,可指定小數(shù)點(diǎn)后的精度%e用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)%E作用同%e,用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)%g%f和%e的簡寫%G%f和%E的簡寫%p用十六進(jìn)制數(shù)格式化變量的地址浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院333.2.6字符串類型的格式化字符串的格式化方法分為兩種,分別為占位符(%)和format方式。占位符(%)>>>age=29>>>print("myageis%d"%age)myageis29>>>name="makes">>>print("mynameis%s"%name)mynameismakes>>>print("%f"%2.3)2.300000>>>print("%10.3f"%2.3)2.300浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院343.2.6字符串類型的格式化format方法:>>>"{}:運(yùn)動(dòng)員{}的得分為{}%".format("2021-9-1","A",85)'2021-9-1:運(yùn)動(dòng)員A的得分為85%'>>>"{1}:運(yùn)動(dòng)員{0}的得分為{2}%".format("A","2021-9-1",85)'2021-9-1:運(yùn)動(dòng)員A的得分為85%'>>>"{0}對(duì){1}說,來{0}家玩吧".format("劉阿姨","小明")'劉阿姨對(duì)小明說,來劉阿姨家玩吧'浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院353.2.6字符串類型的格式化format方法:浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院363.2.6字符串類型的格式化format方法:>>>s="PYTHON">>>"{0:30}".format(s)'PYTHON'>>>"{0:>30}".format(s)'PYTHON'>>>"{0:*^30}".format(s)'************PYTHON************'>>>"{0:-^30}".format(s)'------------PYTHON------------'>>>"{0:3}".format(s)'PYTHON'>>>"{:,.2f}".format(12345.67890)'12,345.68'>>>"{0:H^20.3f}".format(12345.67890)'HHHHH12345.679HHHHHH'>>>"{0:.4}".format("PYTHON")'PYTH'>>>"{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(425)'110101001,?,425,651,1a9,1A9'03布爾數(shù)據(jù)類型浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院383.3.1比較運(yùn)算符比較運(yùn)算符,也稱關(guān)系運(yùn)算符,用于對(duì)常量、變量或表達(dá)式的結(jié)果進(jìn)行大小比較。如果這種比較是成立的,則返回True(真),反之則返回False(假)。比較運(yùn)算符說明>大于,如果>前面的值大于后面的值,則返回True,否則返回False。<小于,如果<前面的值小于后面的值,則返回True,否則返回False。==等于,如果==兩邊的值相等,則返回True,否則返回False。>=大于等于,如果大于或者等于后面的值,則返回True,否則返回False。<=小于等于,如果小于或者等于后面的值,則返回True,否則返回False。!=不等于,如果!=兩邊的值不相等,則返回True,否則返回False。is判斷兩個(gè)變量所引用的對(duì)象是否相同,相同則返回True,否則返回False。isnot判斷兩個(gè)變量的對(duì)象是否不相同,不相同則返回True,否則返回False。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院393.3.1比較運(yùn)算符Python比較運(yùn)算符的使用舉例:print("89是否大于100:",89>100)print("24*5是否大于等于76:",24*5>=76)print("False是否小于True:",False<True)print("True是否等于True:",True==True)89是否大于100:False24*5是否大于等于76:TrueFalse是否小于True:TrueTrue是否等于True:True浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院403.3.2邏輯運(yùn)算符高中數(shù)學(xué)中我們就學(xué)過邏輯運(yùn)算,例如p為真命題,q為假命題,那么“p且q”為假,“p或q”為真,“非q”為真。Python

也有類似的邏輯運(yùn)算,請(qǐng)看下表運(yùn)算符含義基本格式說明and邏輯與運(yùn)算,等價(jià)于數(shù)學(xué)中的“且”aandb當(dāng)a和b兩個(gè)表達(dá)式都為真時(shí),aandb的結(jié)果才為真,否則為假。or邏輯或運(yùn)算,等價(jià)于數(shù)學(xué)中的“或”aorb當(dāng)a和b兩個(gè)表達(dá)式都為假時(shí),aorb的結(jié)果才是假,否則為真。not邏輯非運(yùn)算,等價(jià)于數(shù)學(xué)中的“非”nota如果a為真,那么nota的結(jié)果為假;如果a為假,那么nota的結(jié)果為真。相當(dāng)于對(duì)a取反。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院413.3.2邏輯運(yùn)算符14>6and45.6>90age=int(input("請(qǐng)輸入年齡:"))height=int(input("請(qǐng)輸入身高:"))ifage>=18andage<=30andheight>=170andheight<=185:print("恭喜,你符合報(bào)考飛行員的條件")else:print("抱歉,你不符合報(bào)考飛行員的條件")請(qǐng)輸入年齡:23↙請(qǐng)輸入身高:178↙恭喜,你符合報(bào)考飛行員的條件邏輯運(yùn)算符一般和關(guān)系運(yùn)算符結(jié)合使用,例如:14>6結(jié)果為True,成立,45.6>90結(jié)果為False,不成立,所以整個(gè)表達(dá)式的結(jié)果為False,也即不成立。再看一個(gè)比較實(shí)用的例子:浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院423.3.3成員運(yùn)算符浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院433.3.3成員運(yùn)算符實(shí)例如下:a=10b=2list=[1,2,3,4,5]if(ainlist):print("Line1-aisavailableinthegivenlist")else:print("Line1-aisnotavailableinthegivenlist")if(bnotinlist):print("Line2-bisnotavailableinthegivenlist")else:print("Line2-bisavailableinthegivenlist")浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院443.3.4同一性運(yùn)算符浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院453.3.4同一性運(yùn)算符浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院463.3.4同一性運(yùn)算符浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院473.3.5位運(yùn)算符浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院483.3.5位運(yùn)算符浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院493.3.6常用運(yùn)算符的優(yōu)先級(jí)別和結(jié)合性浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院503.3.6常用運(yùn)算符的優(yōu)先級(jí)別和結(jié)合性運(yùn)算符說明Python運(yùn)算符優(yōu)先級(jí)結(jié)合性優(yōu)先級(jí)順序小括號(hào)()19無高

︿

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

低索引運(yùn)算符x[i]或x[i1:i2[:i3]]18左屬性訪問x.attribute17左乘方**16右按位取反~15右符號(hào)運(yùn)算符+(正號(hào))、-(負(fù)號(hào))14右乘除*、/、//、%13左加減+、-12左位移>>、<<11左按位與&10右按位異或^9左按位或|8左比較運(yùn)算符==、!=、>、>=、<、<=

7左is運(yùn)算符is、isnot6左in運(yùn)算符in、notin5左邏輯非not4右邏輯與and3左邏輯或or2左逗號(hào)運(yùn)算符exp1,exp21左浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院513.3.6常用運(yùn)算符的優(yōu)先級(jí)別和結(jié)合性04類型判斷和類型轉(zhuǎn)換浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院533.4.1類型判斷函數(shù)浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院543.4.1類型判斷函數(shù)浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院553.4.2類型轉(zhuǎn)換函數(shù)如果在交互式解釋器中執(zhí)行如下代碼:>>>height=70.0>>>print("您的身高"+height)Traceback(mostrecentcalllast):File"<pyshell#1>",line1,in<module>print("您的身高"+height)TypeError:mustbestr,notfloat會(huì)發(fā)現(xiàn)報(bào)錯(cuò),解釋器提示我們字符串和浮點(diǎn)類型變量不能直接相連,需要提前將浮點(diǎn)類型變量height轉(zhuǎn)換為字符串才可以。Python為我們提供了多種可實(shí)現(xiàn)數(shù)據(jù)類型轉(zhuǎn)換的函數(shù),如下表所示。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院563.4.2類型轉(zhuǎn)換函數(shù)函

數(shù)作

用int(x)將x轉(zhuǎn)換成整數(shù)類型float(x)將x轉(zhuǎn)換成浮點(diǎn)數(shù)類型complex(real,[,imag])創(chuàng)建一個(gè)復(fù)數(shù)str(x)將x轉(zhuǎn)換為字符串repr(x)將x轉(zhuǎn)換為表達(dá)式字符串eval(str)計(jì)算在字符串中的有效Python表達(dá)式,并返回一個(gè)對(duì)象chr(x)將整數(shù)x轉(zhuǎn)換為一個(gè)字符ord(x)將一個(gè)字符x轉(zhuǎn)換為它對(duì)應(yīng)的整數(shù)值hex(x)將一個(gè)整數(shù)x轉(zhuǎn)換為一個(gè)十六進(jìn)制字符串oct(x)將一個(gè)整數(shù)x轉(zhuǎn)換為一個(gè)八進(jìn)制的字符串表3-12常用據(jù)類型轉(zhuǎn)換的函數(shù)浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院573.4.2類型轉(zhuǎn)換函數(shù)需要注意的是,在使用類型轉(zhuǎn)換函數(shù)時(shí),提供給它的數(shù)據(jù)必須是有意義的。例如,int()函數(shù)無法將一個(gè)非數(shù)字字符串轉(zhuǎn)換成整數(shù):>>>int("123")#轉(zhuǎn)換成功123>>>int("123個(gè)")#轉(zhuǎn)換失敗Traceback(mostrecentcalllast):File"<pyshell#3>",line1,in<module>int("123個(gè)")ValueError:invalidliteralforint()withbase10:'123個(gè)'>>>ord('A')65>>>chr(65)'A'>>>ord('我')25105>>>chr(25105)'我'05math庫的使用Python數(shù)學(xué)計(jì)算的標(biāo)準(zhǔn)函數(shù)庫math共提供4個(gè)數(shù)學(xué)常數(shù)和44個(gè)函數(shù)。該庫是Python提供的內(nèi)置數(shù)學(xué)函數(shù)庫,因?yàn)閺?fù)數(shù)類型常用于科學(xué)計(jì)算,一般計(jì)算并不常用,因此math庫不支持復(fù)數(shù)類型,僅支持整數(shù)和浮點(diǎn)數(shù)運(yùn)算。浙江財(cái)經(jīng)大學(xué)東方學(xué)院信息分院593.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論