>>> import decimal>>> PRint decimal.Decimal(1.1)1.100000000000000088817841970012523233890533447265625
python 2.3開始,超出整型范圍的會自動轉換為長整型。
>>> pystr = "python">>> pystr[0]'p'>>> pystr[2:4]'th'>>> pystr + ' cool''python cool'>>> pystr * 2'pythonpython'
列表(list)
list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
>>> pylist = [x ** 2 for x in range(4)]>>> type(pylist)<type 'list'>>>> print pylist[0, 1, 4, 9]
>>> pya = (x ** 2 for x in range(4))>>> type(pya)<type 'generator'>>>> for i in pya: print i
列表同樣滿足索引操作([]),切片操作([:])
元組(Tuple)
tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
元組同樣滿足索引操作([]),切片操作([:])
字典(dictionary)
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
集合(set)
>>> # 集合set的簡單操作>>> s = set('python') # 利用工廠函數set()創建集合>>> sset(['h', 'o', 'n', 'p', 't', 'y'])>>> 'p' in s # 判斷元素是否在集合中True>>> set('py') < s # 子集True
可以看到上面,集合的打印結果是無序的,而且以上只是簡單舉例集合操作,想要了解更多關于集合的操作可以使用函數dir() 和help()查看。
可變對象(mutable)和不可變對象(immutable)的區別
首先再次聲明,在python中所有的類型操作都作為對象處理,而且對變量的使用不需要預先聲明類型(其實這里不該使用“變量”描述,姑且用“變量”代替吧),python會根據變量的值動態確定變量類型并存儲在內存中(這是python的一大特點),對于immutable類型,若要改變它的值,采取的機制是分配一個新的對象(這里不必擔心內存浪費的情況,python有自己的一套內存回收機制);而對于mutable 類型還是在原來的內存地址上進行操作,~~類似于在C++ 中的引用。
下面給以上類型分分類:
不可變對象(mutable):Number , String , tuple , frozenset
可變對象(immutable):list , dictionary , set
新聞熱點
疑難解答