首頁技術(shù)文章正文

python入門(三)--基礎(chǔ)

更新時間:2018-09-12 來源:黑馬程序員人工智能+Python培訓(xùn)學(xué)院? 瀏覽量:

python入門(三)--基礎(chǔ)

 

 

注釋:

以“#”開頭

代碼塊:

以冒號“:”結(jié)尾的縮進(jìn)(Tab建)語句,大小寫敏感

字符串:

用‘’或者“”表示,如果‘’本身也是一個字符,可以用“”括起來,如:print "I'm a girl."

如果外面的是‘’怎么辦,可以用轉(zhuǎn)義字符:‘\'’,如:print 'I\'m a girl.'轉(zhuǎn)義字符\可以轉(zhuǎn)義很多字符,比如\n表示換行,\t表示制表符,字符\本身也要轉(zhuǎn)義,所以\\表示的字符就是\

在''前加上r,就可以不用轉(zhuǎn)義,直接打印,如: print r'\\\t\\\n\\'

如果字符串內(nèi)部有多次換行,用'''...'''格式表示,如: print '''aaa

... bbb

... ccc'''

Python提供了ord()和chr()函數(shù),可以把字母和對應(yīng)的數(shù)字相互轉(zhuǎn)換:如:

>>> chr(65)

'A'

>>> ord('A')

65

>>> ord('a')

97

Python在后來添加了對Unicode的支持,以Unicode表示的字符串用u'...'表示,比如:

>>>print u'中國'

中國

>>> u'中國'

u'\u4e2d\u56fd'

字符編碼的轉(zhuǎn)換:

中文會轉(zhuǎn)為3個字符,與英文有區(qū)別

UNICODE-->UTF-8:

>>>u'ABC'.encode('utf-8')     

'ABC'

>>>u'中文'.encode('utf-8')

'\xe4\xb8\xad\xe6\x96\x87'

UTF-8-->UNICODE:

>>>'ABC'.decode('utf-8')

u'ABC'

>>> '\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')

u'\u4e2d\u6587'

布爾值:

布爾值可以用‘a(chǎn)nd’、'or'、'not'來運(yùn)算,如:True and False

空值:

用‘None’表示,與0不同。

除法

精確與非精確的區(qū)別:

>>>10/3

3

>>>10.0/3

3.3333333333333335

字符串

字母與數(shù)字可以相互轉(zhuǎn)換,如下所示

字母轉(zhuǎn)為數(shù)字:

>>> ord('B')

66

數(shù)字轉(zhuǎn)為字母:

>>> chr(66)

'B'

字符編碼之間可以相互切換,如下所示

UNICODEàUTF-8

>>> u'apple'.encode('utf_8')

'apple'

>>> u'中文'.encode('utf-8')

'\xe4\xb8\xad\xe6\x96\x87'

UTF-8àUNICODE

>>> u'apple'.decode('utf_8')

'apple'

>>> '\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')

u'\u4e2d\u6587'

引用的.py文件內(nèi)部,必須寫上這兩行:

#!/user/bin/evnpython

# -*-coding:utf-8 -*-

第一行注釋是為了告訴Linux/OS X系統(tǒng),這是一個Python可執(zhí)行程序,Windows系統(tǒng)會忽略這個注釋;

第二行注釋是為了告訴Python解釋器,按照UTF-8編碼讀取源代碼,否則,你在源代碼中寫的中文輸出可能會有亂碼。

格式化一個字符串,需要用‘%’,有如下使用:

%d

整數(shù)(可定義位數(shù),補(bǔ)0)

%f

浮點(diǎn)數(shù)(可定義位數(shù),小數(shù)點(diǎn)后位數(shù),補(bǔ)0)

%s

字符串(可任意使用)

%x

十六進(jìn)制整數(shù)

例如:

>>>'hello,%s'% 'kitty'

'hello,kitty'

>>>'%6d--%%%.3f'%(2018,10.0/3)

'  2018--%3.333'

List

列表,類似于java中的數(shù)組,是有序的,可以添加和刪除

定義

>>> Fruits=['apple','pear','banana']

>>> Fruits

['apple', 'pear', 'banana']

長度

>>> len(Fruits)

3

索引:從0開始,可以為負(fù)數(shù),-1時代表倒數(shù)第一個元素

>>> Fruits[0]

'apple'

>>> Fruits[-1]

'banana'

替換:

>>> Fruits[1]='peach'

>>> Fruits[1]

'peach'

添加:

末尾添加append

定位添加insert(可通過負(fù)數(shù)索引添加,-1即倒數(shù)第二個元素,依次類推)

>>> Fruits.append('strawberry')

>>> Fruits

['apple', 'peach', 'banana', 'strawberry']

>>> Fruits.insert(2,'pear')

>>> Fruits

['apple', 'peach', 'pear', 'banana', 'strawberry']

>>> Fruits.insert(-1,'watermelon')

>>> Fruits

['apple', 'peach', 'pear', 'banana', 'watermelon', 'strawberry']

>>> Fruits.insert(-2,'mango')

>>> Fruits[-3]

'mango'

刪除:不加參數(shù),直接刪除最后一個元素,并返回該元素;指定位置,即刪除指定位置處元素,如是負(fù)數(shù)-1,即刪除最后一個元素

>>> Fruits.pop()

'strawberry'

>>> Fruits

['apple', 'peach', 'pear', 'banana', 'mango', 'watermelon']

>>> Fruits.pop(1)

'peach'

>>> Fruits

['apple', 'pear', 'banana', 'mango', 'watermelon']

>>> Fruits.pop(-1)

'watermelon'

>>> Fruits

['apple', 'pear', 'banana', 'mango']

排序(list是可變對象,因此可以排序)

>>> Fruits.sort()

>>> Fruits

['apple', 'banana', 'mango', 'pear']

Tuple

元祖,類似于list,但是是無序的,一旦初始化就不能修改,是可重復(fù)的

定義,當(dāng)定義為空和只有一個整型的元素需注意

>>> Students

('Andy', ['Belly', 'Cindy'], 'Andy', 'Daniel')

>>> t = ()

>>> t

()

>>> t = (1,)

>>> t

(1,)

長度

>>> len(Students)

4

索引:從0開始,可以為負(fù)數(shù),-1時代表倒數(shù)第一個元素

>>> Students[0]

'Andy'

>>> Students[-3]

['Belly', 'Cindy']

條件判斷

if <條件判斷1>:

    <執(zhí)行1>

elif <條件判斷2>:

    <執(zhí)行2>

elif <條件判斷3>:

    <執(zhí)行3>

else:

    <執(zhí)行4>

>>> grade = 99

>>> if grade <60 :

...     print 'fail'

... elif grade >= 60 and grade <85:

...     print 'pass'

... else:

...     print 'good'

...

good

循環(huán)

For

其中range(x)函數(shù)代表從0到小于x的數(shù)

>>> for fruit in Fruits:

...     print fruit

...

apple

pear

banana

mango

>>> for x in range(5):

...     print x

...

0

1

2

3

4

while

>>> sum = 1

>>> n = 0

>>> while n<5:

...     n = n + 1

...     sum = sum + n

...

>>> print sum

16

Dic

字典,類似于map,鍵值對的存儲格式

定義

>>> Grades={'Andy':95,'Belly':88,'Tom':77}

>>> Grades

{'Andy': 95, 'Belly': 88, 'Tom': 77}

長度

>>> len(Grades)

3

索引:按key索引

>>> Grades['Andy']

95

替換:

>>> Grades['Andy']=97

>>> Grades

{'Andy': 97, 'Belly': 88, 'Tom': 77}

判斷key是否存在,有兩種方式:

一、in判斷,返回bool類型的值

二、get函數(shù)判斷,若無,指定返回值

>>> 'Jerry' in Grades

False

>>> 'Tom' in Grades

True

>>> Grades.get('Jerry',-1)

-1

>>> Grades.get('Tom',-1)

77

刪除,必須指定刪除的key

>>> Grades.pop('Tom')

77

>>> Grades

{'Andy': 97, 'Belly': 88}

Set

與set類似,也是一組key的集合,但是不存儲value

定義,重復(fù)元素自動過濾

>>> Numbers = set([1,2,3,4,3,2,1])

>>> Numbers

set([1, 2, 3, 4])

長度,只計算過濾后的值

>>> len(Numbers)

4

添加,重復(fù)添加會自動過濾

>>> Numbers.add(5)

>>> Numbers

set([1, 2, 3, 4, 5])

>>> Numbers.add(5)

>>> Numbers

set([1, 2, 3, 4, 5])

刪除

>>> Numbers.remove(4)

>>> Numbers

set([1, 2, 3, 5])

Set可以看成是數(shù)學(xué)上無序且無重復(fù)元素的集合,因此可以求交集和并集:

>>>Numbers

set([1, 2, 3,5])

>>>Numbers2 = set([1,5,6,7,2])

>>>Numbers & Numbers2

set([1, 2, 5])

>>>Numbers | Numbers2

set([1, 2, 3, 5,6, 7])

作者:黑馬程序員人工智能+Python培訓(xùn)學(xué)院

首發(fā):http://python.itheima.com/


分享到:
在線咨詢 我要報名
和我們在線交談!