7.1 数据类型
什么是數(shù)據(jù)類型?
數(shù)據(jù)類型可以拆開理解,數(shù)據(jù)是用來記錄狀態(tài)的,而類型則表示的是針對不同狀態(tài)用不同的數(shù)據(jù)類型去表示。
(比如人的年齡用整數(shù)去表示,而銀行計算利息用小數(shù)去表示)
ps:數(shù)據(jù)類型都是靠python內(nèi)部對應的數(shù)據(jù)類產(chǎn)生出來的。
?
int整型
作用:記錄等級,電話號碼,QQ號,年齡,人數(shù)等等
>>> age = 18 # 即 age = int(18) >>> print(age,type(age)) 18 <class 'int'>?
float浮點型
作用:記錄體重,銀行利息,薪資等等
>>> salary = 8929.45 # 即 salary = float(8929.45) >>> print(salary,type(salary)) 8929.45 <class 'float'>ps:整型和浮點型在加減乘除中運用較多
##:為方便記憶,可以將整型和浮點型統(tǒng)稱為數(shù)字類型(非官方叫法)
補充知識1:復數(shù)
>>> n = 1+2j #這樣表示復數(shù),似乎只能用字母j來表示復數(shù) >>> type(n) <class 'complex'>>>> n.real 1.0 >>> n.imag 2.0
補充知識2:長整型
(只有python2中才有)
Python 2.7.10 (default, Oct 6 2017, 22:29:07) [GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin Type "help", "copyright", "credits" or "license" for more information.>>> n = 123 >>> type(n) <type 'int'> >>> n = 123123123123123123123123123 >>> type(n) <type 'long'> >>> n = 123123123123123123123123123L >>> type(n) <type 'long'> >>> n = 1L >>> type(n) <type 'long'>?
str字符串
作用:記錄描述性質(zhì)的數(shù)據(jù),比如人的名字、性別、家庭地址、公司簡介
定義:在引號內(nèi)按照從左到右的順序依次包含一個個字符,引號可以是 'xxx' , "xxx" , 三引號
#單引號 >>> name = 'bitten' >>> type(name) <type 'str'> #雙引號>>> name = "bitten" >>> type(name) <type 'str'> #三引號
info = """ name:bitten age:18 """ print(info)
>>>
name:bitten age:18 #三引號可以存多行 #并且在沒有被變量名接收的情況下可以 # 當注釋?
ps:之所以有三種方式,是為了防止字符串中的文本值也需要引號而帶來不便。
# 字符串的拼接
>>> x = '1' >>> y = '2' >>> x + y '12'>>> msg1 = 'hello' >>> msg2 = 'world' >>> msg1 + msg2 'helloworld'# 1、字符串之間可以相加(不同數(shù)據(jù)類型之間不能相加) # 2、字符串相加是新申請內(nèi)存空間然后拷貝相加的字符串到新的空間中,效率不高>>> 'my name is' + " bitten " + 'my age is' + " 18 " 'my name is bitten my age is 18 '# 3、字符串還可以做乘法運算 >>> 'hello' * 5 'hellohellohellohellohello'?
list列表類型
作用:存儲多個元素,可以方便地取出指定位置的值,比如從一堆個人信息中取出年齡等
定義:在[]內(nèi)用逗號分隔開多個任意類型的值
#補充:list的內(nèi)部是鏈表
l = [20,45.33,'bitten',['a','b']] print(l) #[20, 45.33, 'bitten', ['a', 'b']] print(l[0]) #20 print(l[2]) #bitten print(l[3]) #['a', 'b'] print(l[3][1]) #b >>> l1=['a','b',['c',['d','e']]] >>> print(l1[2][1][0]) d? >>> hobbies=["read","music","sleep","eat","play"] >>> print(hobbies[2]) sleep # 小練習 students_info=[['bitten',18,['play',]],['JOJO',18,['kick','punch']] ] print(students_info[1][2][0]) kick result#思考?:列表雖然能夠存儲多個值,并且取也很方便。但是如果現(xiàn)在有個要求,要存大量的信息數(shù)據(jù),還應該用列表嗎?
?
dict字典類型
作用:以 key:value 的形式記錄多個值,優(yōu)勢是每一個值value都有其對應關系/映射關系key,而key對value有描述性的功能 #注:key:value是一個值
定義:在{}內(nèi)用逗號分隔開多個key:value元素,其中value可以是任意的數(shù)據(jù)類型,而key通常應該是字符串類型
info={'name':'bitten','sex':'male','age':18} print(type(info)) print(info['name']) <class 'dict'> bitten result#思考?:為什么要用字典?
>>>字典能夠明確的表示數(shù)據(jù)指代的是哪方面的信息
>例如:name,sex,age,等等
>>>能表示詳細信息
info={'name':'bitten','age':18,'sex':'male','company_info':{'com_name':'baidu','area':200,'addr':'GuangZhou'} } print(info['company_info']['com_name']) baidu result#注意:一個字典可以表示很多,甚至世界上各個國家的各個城市等等
并且由于字典是無序的,因為它不需要順序去存取數(shù)據(jù)而用的是key
#思考?:什么時候用列表,什么時候用字典?
>>>:當存取的是相同的一類數(shù)據(jù)時可以用列表,當存儲的數(shù)據(jù)需要明確一一對應關系的時候用字典。
?
bool布爾類型
作用:用來作為判斷條件來使用
>>> tag = True # tag = bool(True) >>> print(type(tag)) <type 'bool'>#一般情況下我們不是直接操作的布爾值而是通過判斷去得到布爾值
#? ==比較的是值
#??is:比較的是id是否相等
#??強調(diào):id相等值一定相等,id不等但是值仍然可以相等
>>> res = 3>1 >>> print(id(res)) 140736154141472 >>> tag = True >>> print(id(tag)) 140736154141472>>> tag2 = True >>> print(id(tag2)) 140736154141472 #id 地址相同# 布爾值在內(nèi)存中就兩個值,不會反復的開辟新的內(nèi)存空間存放
?#補充:變量名用is開頭的,一般存儲的都是布爾值。
例如:is_exit, is_delete等等
#補充:布爾值位False的數(shù)據(jù)有:0,None,'' , [] , {}
布爾值可以直接用來判斷
變量名也可以用來判斷,因為變量名指向的值對應的就是True或False
轉(zhuǎn)載于:https://www.cnblogs.com/PowerTips/p/11116554.html
總結(jié)
- 上一篇: 修改input标签输入样式
- 下一篇: win10 + Ubuntu18.04