亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Python筆記

Original 2016-11-16 11:10:26 406
abstract:輸入與輸出>>> print('Name: %s, score: %d' % ('Jack', 89)) Name: Jack, score: 89 >>> print('Hello', 

輸入與輸出

>>> print('Name: %s, score: %d' % ('Jack', 89))
Name: Jack, score: 89

>>> print('Hello', 'world!')   #逗號連接
Hello world!

a = raw_input("a:")   #捕獲原始輸入,返回字符串
b = input("b:")       #數(shù)字或表達(dá)式,不支持輸入字符串,返回?cái)?shù)字類型的數(shù)值

數(shù)據(jù)類型

空(None)

表示該值是一個(gè)空對象,空值是Python里一個(gè)特殊的值,用None表示。None不能理解為0,因?yàn)?是有意義的,而None是一個(gè)特殊的空值。

布爾類型(Boolean)

一個(gè)布爾值只有True、False兩種值,可以用and、or和not運(yùn)算

python 中的and從左到右計(jì)算表達(dá)式,若所有值均為真,則返回最后一個(gè)值,若存在假,返回第一個(gè)假值。or也是從左到有計(jì)算表達(dá)式,返回第一個(gè)為真的值。

>>>'a'and'b'
'b'
>>>''and'b'
''
>>>'a'or'b'
'a'
>>>'' or 'b'
'b'

整型(Int)

在Python內(nèi)部對整數(shù)的處理分為普通整數(shù)和長整數(shù),普通整數(shù)長度為機(jī)器位長,通常都是32位,超過這個(gè)范圍的整數(shù)就自動當(dāng)長整數(shù)處理,而長整數(shù)的范圍幾乎完全沒限制Python可以處理任意大小的整數(shù),當(dāng)然包括負(fù)整數(shù),在程序中的表示方法和數(shù)學(xué)上的寫法一模一樣,例如:1,100,-8080,0,等等。

浮點(diǎn)型(Float)

在運(yùn)算中,整數(shù)與浮點(diǎn)數(shù)運(yùn)算的結(jié)果是浮點(diǎn)數(shù)。整數(shù)和浮點(diǎn)數(shù)在計(jì)算機(jī)內(nèi)部存儲的方式是不同的,整數(shù)運(yùn)算永遠(yuǎn)是精確的(除法難道也是精確的?是的?。↑c(diǎn)數(shù)運(yùn)算則可能會有四舍五入的誤差。

字符串(String)

Python字符串即可以用單引號也可以用雙引號括起來,甚至還可以用三引號括起來字符串是以''或""括起來的任意文本,比如'abc',"xyz"等等。

>>>'I\'m \"OK\"!'    #轉(zhuǎn)義字符 \    
I'm "OK"!
>>> print '\\\t\\'
\       \
>>> print r'\\\t\\'    #用r''表示''內(nèi)部的字符串默認(rèn)不轉(zhuǎn)義  
\\\t\\

如果字符串內(nèi)部有很多換行,用\n寫在一行里不好閱讀,為了簡化,Python允許用'''...'''的格式表示多行內(nèi)容,可以自己試試:

>>> print '''line1
... line2
... line3'''
line1
line2
line3

上面是在交互式命令行內(nèi)輸入,如果寫成程序,就是:

print '''line1
line2
line3'''

列表(List)

用符號[]表示列表,中間的元素可以是任何類型,用逗號分隔。list類似C語言中的數(shù)組,用于順序存儲結(jié)構(gòu)

>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates
['Michael', 'Bob', 'Tracy']

>>> classmates[0]
'Michael'

>>> classmates.append('Adam')              #可以往list中追加元素到末尾
>>> classmates
['Michael', 'Bob', 'Tracy', 'Adam']

>>> classmates.insert(1, 'Jack')           #把元素插入到指定的位置,比如索引號為1的位置
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy', 'Adam']

元組(Tuple)

元組是和列表相似的數(shù)據(jù)結(jié)構(gòu),但它一旦初始化就不能更改,速度比list快,同時(shí)tuple不提供動態(tài)內(nèi)存管理的功能,需理解一下規(guī)則:tuple可以用下標(biāo)返回一個(gè)元素或子tuple

表示只含有一個(gè)元素的tuple的方法是:(d,)后面有個(gè)逗號,用來和單獨(dú)的變量相區(qū)分

>>> t = (1,)
>>> t
(1,)

集合(Set)

集合是無序的,不重復(fù)的元素集,類似數(shù)學(xué)中的集合,可進(jìn)行邏輯運(yùn)算和算術(shù)運(yùn)算

>>> s = set([1, 1, 2, 2, 3, 3])
>>> s
{1, 2, 3}

字典(Dict)

字典是一種無序存儲結(jié)構(gòu),包括關(guān)鍵字(key)和關(guān)鍵字對應(yīng)的值(value)。字典的格式為:dictionary = {key:value}。關(guān)鍵字為不可變類型,如字符串、整數(shù)、只包含不可變對象的元組,列表等不可作為關(guān)鍵字。如果列表中存在關(guān)鍵字對,可以用dict()直接構(gòu)造字典

>>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
>>> d['Michael']
95

如果key不存在,dict就會報(bào)錯(cuò):

>>> d['Thomas']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'Thomas'

要避免key不存在的錯(cuò)誤,有兩種辦法,一是通過in判斷key是否存在:

>>> 'Thomas' in d
False

二是通過dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:

>>> d.get('Thomas')
>>> d.get('Thomas', -1)
-1

要?jiǎng)h除一個(gè)key,用pop(key)方法,對應(yīng)的value也會從dict中刪除:

>>> d.pop('Bob')
75
>>> d
{'Michael': 95, 'Tracy': 85}

類型轉(zhuǎn)換

常用轉(zhuǎn)換

    int(x)                 #將x轉(zhuǎn)換為一個(gè)整數(shù) 
    float(x )              #將x轉(zhuǎn)換到一個(gè)浮點(diǎn)數(shù) 
    str(x)                 #將對象x轉(zhuǎn)換為字符串 
    tuple(s)               #將序列s轉(zhuǎn)換為一個(gè)元組 
    list(s)                #將序列s轉(zhuǎn)換為一個(gè)列表 
    repr(x)                #將對象x轉(zhuǎn)換為表達(dá)式字符串 
    eval(str)              #用來計(jì)算在字符串中的有效Python表達(dá)式,并返回一個(gè)對象 
    chr(x)                 #將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)字符 
    unichr(x)              #將一個(gè)整數(shù)轉(zhuǎn)換為Unicode字符 
    ord(x)                 #將一個(gè)字符轉(zhuǎn)換為它的整數(shù)值 
    hex(x)                 #將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)十六進(jìn)制字符串 
    oct(x)                 #將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)八進(jìn)制字符串
    complex(real [,imag])  #創(chuàng)建一個(gè)復(fù)數(shù)


Release Notes

Popular Entries