摘要:輸入與輸出>>> 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ù)字或表達式,不支持輸入字符串,返回數(shù)字類型的數(shù)值
數(shù)據(jù)類型
空(None)
表示該值是一個空對象,空值是Python里一個特殊的值,用None表示。None不能理解為0,因為0是有意義的,而None是一個特殊的空值。
布爾類型(Boolean)
一個布爾值只有True、False兩種值,可以用and、or和not運算
python 中的and從左到右計算表達式,若所有值均為真,則返回最后一個值,若存在假,返回第一個假值。or也是從左到有計算表達式,返回第一個為真的值。
>>>'a'and'b' 'b' >>>''and'b' '' >>>'a'or'b' 'a' >>>'' or 'b' 'b'
整型(Int)
在Python內(nèi)部對整數(shù)的處理分為普通整數(shù)和長整數(shù),普通整數(shù)長度為機器位長,通常都是32位,超過這個范圍的整數(shù)就自動當長整數(shù)處理,而長整數(shù)的范圍幾乎完全沒限制Python可以處理任意大小的整數(shù),當然包括負整數(shù),在程序中的表示方法和數(shù)學上的寫法一模一樣,例如:1,100,-8080,0,等等。
浮點型(Float)
在運算中,整數(shù)與浮點數(shù)運算的結果是浮點數(shù)。整數(shù)和浮點數(shù)在計算機內(nèi)部存儲的方式是不同的,整數(shù)運算永遠是精確的(除法難道也是精確的?是的?。↑c數(shù)運算則可能會有四舍五入的誤差。
字符串(String)
Python字符串即可以用單引號也可以用雙引號括起來,甚至還可以用三引號括起來字符串是以''或""括起來的任意文本,比如'abc',"xyz"等等。
>>>'I\'m \"OK\"!' #轉義字符 \ I'm "OK"!
>>> print '\\\t\\' \ \ >>> print r'\\\t\\' #用r''表示''內(nèi)部的字符串默認不轉義 \\\t\\
如果字符串內(nèi)部有很多換行,用\n寫在一行里不好閱讀,為了簡化,Python允許用'''...'''的格式表示多行內(nèi)容,可以自己試試:
>>> print '''line1 ... line2 ... line3''' line1 line2 line3
上面是在交互式命令行內(nèi)輸入,如果寫成程序,就是:
print '''line1 line2 line3'''
列表(List)
用符號[]表示列表,中間的元素可以是任何類型,用逗號分隔。list類似C語言中的數(shù)組,用于順序存儲結構
>>> 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ù)結構,但它一旦初始化就不能更改,速度比list快,同時tuple不提供動態(tài)內(nèi)存管理的功能,需理解一下規(guī)則:tuple可以用下標返回一個元素或子tuple
表示只含有一個元素的tuple的方法是:(d,)后面有個逗號,用來和單獨的變量相區(qū)分
>>> t = (1,) >>> t (1,)
集合(Set)
集合是無序的,不重復的元素集,類似數(shù)學中的集合,可進行邏輯運算和算術運算
>>> s = set([1, 1, 2, 2, 3, 3]) >>> s {1, 2, 3}
字典(Dict)
字典是一種無序存儲結構,包括關鍵字(key)和關鍵字對應的值(value)。字典的格式為:dictionary = {key:value}。關鍵字為不可變類型,如字符串、整數(shù)、只包含不可變對象的元組,列表等不可作為關鍵字。如果列表中存在關鍵字對,可以用dict()直接構造字典
>>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85} >>> d['Michael'] 95
如果key不存在,dict就會報錯:
>>> d['Thomas'] Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'Thomas'
要避免key不存在的錯誤,有兩種辦法,一是通過in判斷key是否存在:
>>> 'Thomas' in d False
二是通過dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:
>>> d.get('Thomas') >>> d.get('Thomas', -1) -1
要刪除一個key,用pop(key)方法,對應的value也會從dict中刪除:
>>> d.pop('Bob') 75 >>> d {'Michael': 95, 'Tracy': 85}
類型轉換
常用轉換
int(x) #將x轉換為一個整數(shù) float(x ) #將x轉換到一個浮點數(shù) str(x) #將對象x轉換為字符串 tuple(s) #將序列s轉換為一個元組 list(s) #將序列s轉換為一個列表 repr(x) #將對象x轉換為表達式字符串 eval(str) #用來計算在字符串中的有效Python表達式,并返回一個對象 chr(x) #將一個整數(shù)轉換為一個字符 unichr(x) #將一個整數(shù)轉換為Unicode字符 ord(x) #將一個字符轉換為它的整數(shù)值 hex(x) #將一個整數(shù)轉換為一個十六進制字符串 oct(x) #將一個整數(shù)轉換為一個八進制字符串 complex(real [,imag]) #創(chuàng)建一個復數(shù)