本節(jié)摘要:數(shù)據(jù)類型;變量和常量
Daily Record:每天一紀(jì)念,記錄下python的學(xué)習(xí)歷程,入門學(xué)習(xí)筆記與心得。本學(xué)習(xí)筆記主要基于廖雪峰大大的Python教程。不積跬步,無(wú)以至千里~ .?(? ??_??)?
文章目錄
- 數(shù)據(jù)類型
- 整數(shù) int
- 浮點(diǎn)數(shù) float
- 字符串 string
- 布爾值
- 空值 None
- 變量
- 常量
筆記
1.以#開(kāi)頭的語(yǔ)句是注釋,注釋是給人看的,可以是任意內(nèi)容,解釋器會(huì)忽略掉注釋。
2.約定俗成,代碼的縮進(jìn)為4個(gè)空格。
3.每一行都是一個(gè)語(yǔ)句,當(dāng)語(yǔ)句以冒號(hào)“:”結(jié)尾時(shí),縮進(jìn)的語(yǔ)句視為代碼塊。
4.Python程序要區(qū)分大小寫,如果大小寫混了,可能會(huì)報(bào)錯(cuò)。
5.縮進(jìn)的壞處就是“復(fù)制-粘貼”功能會(huì)失效,當(dāng)你重構(gòu)代碼時(shí),粘貼過(guò)去的代碼必須重新檢查縮進(jìn)是否正確。
數(shù)據(jù)類型
在Python中,可以直接處理以下幾種數(shù)據(jù)類型:
整數(shù) int
>>>print 100, -100 #十進(jìn)制整數(shù)
100 -100
>>>print 0xff00 #十六進(jìn)制整數(shù)用ox前綴和0-9,a-f表示
65280
浮點(diǎn)數(shù) float
浮點(diǎn)數(shù),既小數(shù),它的意思是按科學(xué)技術(shù)法表示時(shí),小數(shù)點(diǎn)位置是可以浮動(dòng)變化的。
>>>print 1.23, -3.14 #浮點(diǎn)數(shù)
1.23 -3.14
>>>print 1.23e8 #科學(xué)計(jì)數(shù)法表示,把10用e替代,表示1.23乘以10的8次方
123000000.0
>>>print 1.2e-5 #科學(xué)計(jì)數(shù)法表示,把10用e替代,表示1.2乘以10的-5次方
1.2e-05
字符串 string
字符串不包括'' "" 本身
如果字符串內(nèi)部既包含'又包含",可以用轉(zhuǎn)義字符\來(lái)標(biāo)識(shí)
轉(zhuǎn)義字符 \ 的運(yùn)用
| 轉(zhuǎn)義字符 | 含義 |
|---|---|
| \n | 換行符 |
| \t | 制表符即8個(gè)空格符 |
字符\本身也要轉(zhuǎn)義,例如\\
|
\ |
r''表示''內(nèi)部的字符串默認(rèn)不轉(zhuǎn)義,例如r'\\\t\\'
|
\\\t\\ |
>>>print 'hello',"world" #字符串,用''或“”括起來(lái)的任意文本
hello world
>>>print 'hello ',"world" #字符串,用''或“”括起來(lái)的任意文本
hello world
>>>print "hello 'world'" #打印含有''的字符串
hello 'world'
>>>print "\"hello 'world'\"" #打印含有''和""的字符串
"hello 'world'"
>>>print r"\"hello 'world'\"" #用r''或""表示內(nèi)部的字符串不轉(zhuǎn)義
\"hello 'world'\"
>>>print '\\\n\\'
\
\
>>>print '\\\t\\'
\ \
>>>print r'\\\t\\'
\\\t\\
如果字符串內(nèi)部有很多換行,用\n寫在一行里不好閱讀,為了簡(jiǎn)化,Python允許用'''...'''的格式表示多行內(nèi)容
>>>print '''hello
...world''' #用'''...'''的格式表示多行內(nèi)容
hello
world
>>>print r'''hello
...world''' #用r'''...'''的格式同樣表示多行內(nèi)容
hello
world
布爾值
一個(gè)布爾值只有True、False兩種值,要么是True,要么是False
在Python中,可以直接用True、False表示布爾值(請(qǐng)注意大小寫)
>>>True
True
>>>False
False
>>>3 > 1
True
>>>3 > 6
False
布爾值可以用and、or和not運(yùn)算。
and運(yùn)算是與運(yùn)算,只有所有都為True,and運(yùn)算結(jié)果才是True:
>>>True and True
True
>>>True and False
False
>>>False and False
False
or運(yùn)算是或運(yùn)算,只要其中有一個(gè)為True,or運(yùn)算結(jié)果就是True:
>>>True or True
True
>>>True or False
True
>>>False or False
False
not運(yùn)算是非運(yùn)算,它是一個(gè)單目運(yùn)算符,把True變成False,F(xiàn)alse變成True:
>>>not True
False
>>>not False
>True
布爾值經(jīng)常用在條件判斷中,比如:
if age >= 18:
print 'adult'
else:
print 'teenager'
空值 None
Python中用None表示空值,但意思不是0,0是有意義的。
變量
在計(jì)算機(jī)程序中,變量可以是數(shù)字,還可以是任意數(shù)據(jù)類型。
變量在程序中就是用一個(gè)變量名表示,變量名必須是大小寫英文、數(shù)字和_的組合,且不能用數(shù)字開(kāi)頭,比如:
a = 1 #即定義了變量名為a的變量,同時(shí)把整數(shù)1賦予變量a
a_01 = 'a_01' #變量a_01是一個(gè)字符串
Answer = False #變量Answer是一個(gè)布爾值False
等號(hào)=是賦值語(yǔ)句,可以把任意數(shù)據(jù)類型賦值給變量,同一個(gè)變量可以反復(fù)賦值,而且可以是不同類型的變量
a = 1 #即定義了變量名為a的變量,同時(shí)把整數(shù)1賦予變量a
b = a #把變量a的值賦予變量b,即b等于1
a = 123 # a是整數(shù)
print a
a = 'ABC' # a變?yōu)樽址?print a
| 語(yǔ)言類型 | 特點(diǎn) |
|---|---|
| 動(dòng)態(tài)語(yǔ)言 | 變量本身類型不固定的語(yǔ)言。比靜態(tài)語(yǔ)言更靈活。 |
| 靜態(tài)語(yǔ)言 | 在定義變量時(shí)必須指定變量類型,如果賦值的時(shí)候類型不匹配,就會(huì)報(bào)錯(cuò)。 |
賦值語(yǔ)句的等號(hào)不等同于數(shù)學(xué)的等號(hào)
X = 10 #X的值為10
X = X + 2 #先計(jì)算右側(cè)X+2為12,再賦給變量X為12
理解變量在計(jì)算機(jī)內(nèi)存中的表示,例如:
a = 'ABC' #1.在內(nèi)存中創(chuàng)建了字符串'ABC' 2.在內(nèi)存中創(chuàng)建了變量a,且a指向字符串'ABC'
b = a #Python解釋器創(chuàng)建了變量b,并將b指向變量a指向的字符串'ABC'
a = 'XYZ' #Python解釋器創(chuàng)建了字符串'XYZ',并將a指向字符串'XYZ',但b的指向并沒(méi)有改
print b #打印變量b的結(jié)果是字符串'ABC'
常量
常量就是不能變的變量。在Python中,通常用全部大寫的變量名表示常量,常量的值是可以被改變的。
PI = 3.14159265359
整數(shù)的除法為什么也是精確的,整數(shù)除法永遠(yuǎn)是整數(shù),即使除不盡
>>> 10 / 3
3
要做精確的除法,只需把其中一個(gè)整數(shù)換成浮點(diǎn)數(shù)做除法就可以:
>>> 10.0 / 3
3.3333333333333335
>>> 10 / 3.0
3.3333333333333335
整數(shù)除法只取結(jié)果的整數(shù)部分,所以Python還提供一個(gè)余數(shù)運(yùn)算,可以得到兩個(gè)整數(shù)相除的余數(shù):
>>> 10 % 3
1
無(wú)論整數(shù)做除法還是取余數(shù),結(jié)果永遠(yuǎn)是整數(shù),所以,整數(shù)運(yùn)算結(jié)果永遠(yuǎn)是精確的。