6.2 Python的基本數(shù)據(jù)類型_第1頁
6.2 Python的基本數(shù)據(jù)類型_第2頁
6.2 Python的基本數(shù)據(jù)類型_第3頁
6.2 Python的基本數(shù)據(jù)類型_第4頁
6.2 Python的基本數(shù)據(jù)類型_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

人工智能與計算機應用Python基本數(shù)據(jù)類型Python基本數(shù)據(jù)類型一、常量和變量二、數(shù)值類型三、字符串型四、列表五、元組六、字典七、集合本節(jié)內容常量和變量在程序運行過程中,不能變化的數(shù)據(jù)稱為常量;而有些數(shù)據(jù)是可以隨著程序的運行而發(fā)生變化的,這類數(shù)據(jù)稱為變量。6.2.1常量和變量20helloX=20X=101.常量常量是一旦初始化之后就不能夠修改的固定值。按其值的類型分為整型常量、浮點型常量、字符型常量等?!緦崙?zhàn)6-1】常量的使用。>>>2*1020>>>10/33.3333333333333335>>>print('中國夢'*3)中國夢中國夢中國夢

#重復輸出3次字符串常量1.變量變量是程序設計語言中能存儲計算結果或能表示值的抽象概念。每個變量必須有一個名稱,這個名稱被稱為變量名。Python規(guī)定變量名由數(shù)字、字母或下畫線組成,且第一個字符必須為字母或下畫線,不能將Python關鍵字,如print、if、else、for等作為變量名。在使用變量之前,需要對其進行賦值。1.變量【實戰(zhàn)6-2】變量的定義和使用。>>>str1='我愛'>>>str2='中國'>>>str1+str2'我愛中國' >>>score1=70>>>score1+=20 #相當于score1=score1+20>>>print(score1)908Python基本數(shù)據(jù)類型集合06字典05數(shù)值類型01字符串型02列表0304元組數(shù)值類型6.2.2數(shù)值類型數(shù)值類型(數(shù)字類型)主要有整型、浮點型、復數(shù)型、布爾型。1.整型整數(shù)是不帶小數(shù)點的正整數(shù)或負整數(shù)。在Python中整型是沒有限制大小的,其取值范圍只與計算機的內存有關。整型有以下四種進制表現(xiàn)形式:(1)十進制:與數(shù)學上的寫法相同,如:0、60、-1280等。(2)二進制:以0b開頭,后跟二進制數(shù)的數(shù)據(jù),如:0b1100,-0b100等。(3)八進制:以0o開頭,后跟八進制數(shù)的數(shù)據(jù),例如:0o237,-0o123等。(4)十六進制:以0x開頭,后跟十六進制數(shù)的數(shù)據(jù),例如:0x14b,-0x17等。各進制數(shù)之間可以使用bin()、oct()、hex()、int()等函數(shù)進行轉換。數(shù)值類型2.浮點型浮點數(shù)由整數(shù)部分與小數(shù)部分組成。3.1415926、-6.0、78.3、0.0科學計數(shù)法:3.14e8表示3.14×108

數(shù)值類型3.復數(shù)型復數(shù)由實數(shù)部分和虛數(shù)部分構成,復數(shù)的實部和虛部都是浮點型。3+5j、1.1+7J數(shù)值類型4.布爾型Python中的布爾型數(shù)據(jù)只有兩個取值:True(真)和False(假)。實際上,布爾型也是整型,True=1,F(xiàn)alse=0,可以用and、or、not進行邏輯運算,也可以和數(shù)字型進行計算。對于值為零的任何數(shù)字或空集(空列表、空元組、空字典),在Python中的布爾值都是False。字符串型6.2.3字符串型1.字符串的表示和創(chuàng)建字符串是有序的字符集合,是用于表示文本的數(shù)據(jù)類型。字符串可以用一對單引號、雙引號、三個單引號或三個雙引號引起來字符串中的字符包括數(shù)字、字母、中文字符、特殊符號以及一些不可見的控制字符,如換行符及制表符等。1.字符串的表示和創(chuàng)建【實戰(zhàn)6-3】字符串的表示和創(chuàng)建。>>>str1='我愛中國'>>>print(str1)我愛中國>>>str2="中華民族偉大復興">>>print(str2)'中華民族偉大復興'>>>str3=‘他說:“我愛中國”’

#單引號表示的字符串中允許包含雙引號>>>print(str3)'他說:"我愛中國"‘>>>str4='let'sgo'

#單引號表示的字符串中不允許包含單引號SyntaxError:invalidsyntax>>>str5="他說:"我愛中國""

#雙引號表示的字符串中不允許包含雙引號SyntaxError:invalidsyntax>>>str6="""這是一個

#用三個單引號或三個雙引號來表示多行字符串多行字符""">>>print(str6)這是一個多行字符2.轉義字符的使用對于一些不能直接輸入的特殊字符通常用轉義字符表示。轉義字符含義轉義字符含義\(在行尾時)續(xù)行符\\反斜杠符號\

'單引號\"雙引號\n換行符\r回車符\t橫向制表符\v縱向制表符\b退格符\000空\f換頁\a響鈴\oyy八進制數(shù)yy代表的字符,例如:\o12代表換行\(zhòng)xyy十六進制數(shù)yy代表的字符,例如:\x0a代表換行表6-1常見的轉義字符轉義符\2.轉義字符的使用【實戰(zhàn)6-4】轉義字符的使用。>>>print("他說:"你吃飯了嗎?"我回答:"我吃過了。"")SyntaxError:invalidsyntax

#雙引號表示的字符串中不允許包含雙引號>>>print("他說:\"你吃飯了嗎?\"\n我回答:\"我吃過了。\"")他說:"你吃飯了嗎?"我回答:"我吃過了。">>>print(r'你好\n中國')

#用r或R來指定一個原始字符串,不讓轉義字符生效你好\n中國3.字符串運算Python常用的字符串運算包括連接、比較、切片等。表6-2所示為常用的字符串運算,表中假設a='Hello',b='Python'。表6-2常用的字符串運算運算符相關描述實例+字符串連接>>>a+b'HelloPython'*重復輸出字符串>>>a*2'HelloHello'[]使用索引獲取字符串中的字符>>>a[0]'H'[:]使用切片截取字符串中的一部分>>>a[1:4]'ell'in判斷一個字符或字符串是否出現(xiàn)在一個字符串中,若出現(xiàn)則返回True,否則返回False>>>'e'inaTruenotin判斷一個字符或字符串是否出現(xiàn)在一個字符串中,若不出現(xiàn)則返回True,否則返回False>>>'H'notinaFalse字符串的序號01234正向遞增序號-5-4-3-2-1反向遞減序號4.字符串處理函數(shù)Python提供了一些和字符串相關的內置函數(shù),它們能夠快速地讓對象執(zhí)行簡單的操作。表6-3為常用的字符串函數(shù),假設表中a='hello',b='15',c=10.7。表6-3常用的字符串處理函數(shù)函數(shù)相關描述實例len()返回字符串的字符個數(shù)>>>len(a)5max()返回字符串中ASCII最大的字符>>>max(a)'o'min()返回字符串中ASCII最小的字符>>>min(a)'e'int()

將字符型轉換成整數(shù),如果

是數(shù)值型數(shù)據(jù),則執(zhí)行取整操作>>>int(b)15>>>int(c)10float()將字符型轉換成浮點數(shù)>>>float(b)15.0str()將任何變量轉換成字符串型變量>>>str(c)'10.7'eval()計算在字符串中的有效表達式并返回結果>>>eval('5*10')50tuple()將序列轉換為一個元組>>>tuple(a)('h','e','l','l','o')list()將序列轉換為一個列表>>>list(a)['h','e','l','l','o']set()將序列轉換為可變集合>>>set(a){'e','h','o','l'}5.字符串處理方法Python提供了一系列用于字符串處理的方法,這些方法封裝了一些關于字符串的簡單操作。表6-4列出了常用的字符串方法,表中假設a='hello',b='Python'表6-4常用字符串方法方法相關描述實例str.join(seq)以str作為分隔符,將seq中的所有元素合并為一個新的字符串>>>a.join('你好嗎')'你hello好hello嗎'str.center(width,fillchar)將字符串按照width指定的寬度居中顯示,且使用fillchar(默認為空格)填充多余的長度>>>a.center(11,'*')'***hello***'str.split(sep="",num=str.count(sep))以sep為分隔符截取字符串,如果num有指定值,則僅截取num+1個子字符串>>>c='h,e,l,l,o'>>>c.split(',')['h','e','l','l','o']str.splitlines([keepends])按照行('\r','\r\n','\n')分隔,返回一個包含各行作為元素的列表,如果參數(shù)keepends為False,不包含換行符,如果為True,則保留換行符>>>d='hello\n1111\r'>>>d.splitlines()['hello','1111']str.replace(old,new[,count])把字符串中的old換成new,如果count指定,則替換不超過count次>>>a.replace('e','555')'h555llo'str.capitalize()把字符串的第一個字符轉換成大寫>>>a.capitalize()'Hello'str.lower()把字符串的所有大寫字符轉換成小寫>>>b.lower()'python'str.upper()把字符串的所有小寫字符轉換成大寫>>>a.upper()'HELLO'str.swapcase()把字符串的大寫字符轉換成小寫,小寫字符轉換成大寫>>>b.swapcase()'pYTHON'str.isalnum()如果字符串中至少有一個字符,且所有字符都是字母或數(shù)字則返回True,否則返回False>>>a.isalnum()Truestr.isalpha()如果字符串中至少有一個字符,且所有字符都是字母則返回True,否則返回False>>>a.isalpha()Truestr.isdigit()如果字符串只包含數(shù)字,則返回True,否則返回False>>>a.isdigit()Falsestr.count(sub[,start[,end]])返回sub在字符串中出現(xiàn)的次數(shù)。如果指定了start或end,則返回指定范圍內sub出現(xiàn)的次數(shù)>>>a.count('h')1str.find(sub[,start[,end]])檢查sub是否包含在字符串中,如果指定了start或end,則在指定范圍內檢查,如果包含則返回開始的索引值,否則返回-1>>>a.find('llo')2方法為<a>.<b>()中的函數(shù).<b>()列表6.2.4列表列表是一個可變的有序序列,可以存儲各種數(shù)據(jù)元素。列表的長度與元素都是可變的,可自由地對列表中的數(shù)據(jù)進行添加、刪除、修改元素等操作。1.列表的創(chuàng)建列表使用[]或list()來創(chuàng)建,列表中的元素使用中括號括起來,元素之間用逗號分隔。【實戰(zhàn)6-5】列表的創(chuàng)建>>>list1=[]

#創(chuàng)建一個空列表>>>print(list1)[]>>>list2=list()#使用list函數(shù)創(chuàng)建一個空列表>>>print(list2)[]>>>list3=[‘星期一’,’星期二’,’星期三’,’星期四’]#用相同數(shù)據(jù)類型的數(shù)據(jù)創(chuàng)建列表>>>print(list3)['星期一','星期二',‘星期三','星期四']>>>list4=[0.5,1,’星期二’,’星期三’]#用不同數(shù)據(jù)類型的數(shù)據(jù)創(chuàng)建列表>>>print(list4)[0.5,1,'星期二','星期三']2.列表的索引和切片列表中的每個元素都有編號,這些編號代表了元素在列表中的位置,稱為索引位置。從起始元素開始,索引值從0開始遞增。此外,Python還支持索引值是負數(shù)。切片是對序列截取一部分的操作,切片的功能十分強大,它可以對列表的元素進行大范圍操作?!緦崙?zhàn)6-6】列表的索引和切片>>>list1=['星期一','星期二','星期三','星期四','星期五']>>>print(list1[1])#訪問列表中索引位置為1的元素'星期二'>>>list1[1]='語文'#用賦值語句改變列表元素的值>>>print(list1)['星期一','語文','星期三','星期四','星期五']>>>print(list1[1:4])#截取列表中索引位置1開始,4之前的元素['語文','星期三','星期四']>>>print(list1[:3])#截取列表中索引位置0開始,3之前的元素['星期一','語文','星期三']-101234正向遞增序號反向遞減序號-5-4-3-23.列表的基本操作列表的基本操作有列表元素的添加、刪除,列表的合并等。【實戰(zhàn)6-7】列表元素的添加、刪除、合并等常用操作>>>list1=['星期一','星期二','星期三','星期四']>>>list1.append(‘星期五’)#用append()方法,在列表的末尾增加元素>>>print(list1)['星期一','星期二','星期三','星期四','星期五']>>>list1.insert(3,'星期日')#用insert()方法,在列表的指定位置插入元素>>>print(list1)['星期一','星期二','星期三','星期日','星期四','星期五']>>>dellist1[2]

#用del命令刪除列表中指定元素>>>print(list1)['星期一','星期二','星期日','星期四','星期五']>>>list2=['星期六','星期日']>>>list3=list1+list2#用連接運算符+合并列表>>>print(list3)['星期一','星期二','星期日','星期四','星期五','星期六','星期日']>>>list4=list2*2

#用重復運算符*重復列表>>>print(list4)['星期六','星期日','星期六','星期日']>>>list4.remove(‘星期日’)#用remove()方法移除列表中指定值的第一個匹配項>>>print(list4)['星期六','星期六','星期日']元組6.2.5元組元組是一個不可變序列。當創(chuàng)建元組后,不可以修改、添加和刪除元組中的元素,但可以訪問元組中的元素。1.元組的創(chuàng)建元組由小括號內的元素和逗號組成。在使用元組之前,首先要創(chuàng)建元組?!緦崙?zhàn)6-8】元組的創(chuàng)建。>>>tup1=('星期一','星期二','星期三')>>>tup2=(1,2,3,4,5,6)>>>tup3=('hello','Python',50.1,100)>>>tup4=()#用小括號創(chuàng)建空元組>>>tup5=(30,)#元組中只包含一個元素時,需要在元素后面添加逗號>>>tup6=tuple()

#用tuple()函數(shù)來創(chuàng)建空元組>>>tup7=1,2#不使用小括號創(chuàng)建元組2.元組的基本操作元組與列表類似,索引值從0開始遞增,可使用下標索引訪問元組中的元素,可以進行切片、組合等操作。不能刪除元組中的元素,但可以使用del語句刪除整個元組。【實戰(zhàn)6-9】元組的訪問、連接、刪除等操作。>>>tup1=('星期一','星期二','星期三','星期四') >>>print(tup1[0])'星期一'>>>print(tup1[1:3])('星期二','星期三')>>>tup1[0]='星期五'#元組元素不允許修改Traceback(mostrecentcalllast):File"<pyshell#3>",line1,in<module>tup1[0]='星期五'TypeError:'tuple'objectdoesnotsupportitemassignment>>>tup2=(1,2,3,4,5,6)>>>tup3=tup1+tup2#用+合并成一個新的元組>>>print(tup3)('星期一','星期二','星期三','星期四',1,2,3,4,5,6)>>>tup4=('hello',) >>>tup5=tup4*3 #將元組中的元素重復3次,返回一個新的元組>>>print(tup5)('hello','hello','hello')>>>deltup5#用del命令刪除整個元組字典6.2.6字典Python提供了兩個沒有順序的內建數(shù)據(jù)類型,分別是字典和集合。字典是由鍵和值組成的鍵-值對的無序集合?!癈ity”:“南寧”

“School”:“廣西民族大學”

字典有以下特征:字典中的數(shù)據(jù)必須以鍵-值對的形式出現(xiàn)。鍵在字典中必須是唯一的,每個鍵只能對應一個值。如果同一個鍵被多次賦值,則最后一次賦的值為該鍵對應的值。字典中的鍵是不可變的,為不可變類型,不能進行修改。字典中的值則沒有任何限制,可以修改,也可以是任何數(shù)據(jù)類型。1.字典的創(chuàng)建Python提供了快速創(chuàng)建字典的方式,用一對大括號包含多個鍵-值對,其語法格式如下:

{鍵1:值1,鍵2:值2……}【實戰(zhàn)6-10】字典的創(chuàng)建。>>>dict1={}#創(chuàng)建空字典>>>dict2={'學號':'1001','姓名':'張三','成績':90}>>>dict3={'數(shù)學':80,'語文':90.5,'數(shù)學':82}#'數(shù)學'鍵被兩次賦值>>>print(dict3)#后面賦的值82為'數(shù)學'鍵對應的值。{'數(shù)學':82,'語文':90.5}2.字典的基本操作字典的基本操作有字典訪問、字典修改、字典刪除及元組轉字典等?!緦崙?zhàn)6-11】字典的基本操作。>>>dict1={'學號':'1001','姓名':'張三','成績':90}>>>dict1['學號']='1002'#更新'學號'鍵的值>>>deldict1['姓名'] #刪除'姓名'鍵>>>print(dict1){'學號':'1002','成績':90}>>>dict1.clear() #清空字典dict1>>>print(dict1){}>>>deldict1#刪除字典dict1集合6.2.7集合集合是一個無序的且不重復的元素集。集合由不同元素組成,使用集合可以很方便地刪除重復元素。{‘星期一’,‘星期二’,2,4,(1,2,3)}{1,3,5,7,9}1.集合的創(chuàng)建在Python中,可以使用大括號{}創(chuàng)建集合,也可以使用set()函數(shù)創(chuàng)建集合?!緦崙?zhàn)6-12】集合的創(chuàng)建。>>>set1={1,1,3,5,7,7,9}#創(chuàng)建集合,去除重復元素>>>print(set1){1,3,5,7,9}>>>set2=set()#用set()函數(shù)創(chuàng)建空集合,不能使用大括號{}來創(chuàng)建空集合>>>print(set2)set()>>>list1=['星期一','星期二','星期一','星期三']>>>set3=set(list1)#用set()函數(shù)將列表轉換為集合,并去除重復元素>>>print(set3){'星期三','星期二','星期一'}#集合是無序的,程序運行結果中元素的位置是隨機的>>>set4=set(‘HelloPython’)#用set()函數(shù)將字符串轉換為集合,并去除重復元素>>>print(set4){'P','o','y','h','t','e','n','l','H',''}

溫馨提示

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

評論

0/150

提交評論