欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

跟老齊學Python之數(shù)據(jù)類型總結(jié)

 更新時間:2014年09月24日 10:58:39   投稿:hebedich  
前面已經(jīng)洋洋灑灑地介紹了不少數(shù)據(jù)類型。不能再不顧一切地向前沖了,應當總結(jié)一下。這樣讓看官能夠從總體上對這些數(shù)據(jù)類型有所了解,如果能夠有一覽眾山小的感覺,就太好了。

下面的表格中列出了已經(jīng)學習過的數(shù)據(jù)類型,也是python的核心數(shù)據(jù)類型之一部分,這些都被稱之為內(nèi)置對象。

對象,就是你面對的所有東西都是對象,看官要逐漸熟悉這個稱呼。所有的數(shù)據(jù)類型,就是一種對象。英文單詞是object,直接的漢語意思是物體,這就好像我們在現(xiàn)實中一樣,把很多我們看到和用到的都可以統(tǒng)稱為“東西”一樣?!皷|西”就是“對象”,就是object。在編程中,那個所謂面向?qū)ο?,也可以說成“面向東西”,是嗎?容易有歧義吧。

對象類型 舉例
int/float 123, 3.14
str 'qiwsir.github.io'
list [1, [2, 'three'], 4]
dict {'name':"qiwsir","lang":"python"}
tuple (1, 2, "three")
set set("qi"), {"q", "i"}

不論任何類型的數(shù)據(jù),只要動用dir(object)或者help(obj)就能夠在交互模式下查看到有關的函數(shù),也就是這樣能夠查看相關幫助文檔了。舉例:

復制代碼 代碼如下:

>>> dir(dict)

看官需要移動鼠標,就能夠看全(下面的本質(zhì)上就是一個list):

復制代碼 代碼如下:

['__class__', '__cmp__', '__contains__', '__delattr__', '__delitem__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values', 'viewitems', 'viewkeys', 'viewvalues']

先略過__雙下劃線開頭的哪些,看后面的,就是dict的內(nèi)置函數(shù)。至于詳細的操作方法,通過類似help(dict.pop)的方式獲得。這是前面說過的,再說一遍,加深印象。

我的觀點:學習,重要的是學習方法,不是按部就班的敲代碼。

今天既然是復習,就要在原來基礎上提高一點。所以,也要看看上面那些以雙下劃線開頭的東西,請看官找一下,有沒有發(fā)現(xiàn)這個:"__doc"。這是什么,它是一個文件,里面記錄了對當前所查看的對象的詳細解釋。可以在交互模式下這樣查看:

>>> dict.__doc__
顯示應該是這樣的:

復制代碼 代碼如下:

"dict() -> new empty dictionary\ndict(mapping) -> new dictionary initialized from a mapping object's\n (key, value) pairs\ndict(iterable) -> new dictionary initialized as if via:\n d = {}\n for k, v in iterable:\n d[k] = v\ndict(**kwargs) -> new dictionary initialized with the name=value pairs\n in the keyword argument list. For example: dict(one=1, two=2)"

注意看上面亂七八糟的英文中,是不是有\(zhòng)n符號,這是什么?前面在講述字符串的時候提到了轉(zhuǎn)義符號\,這是換一行。也就是說,如果上面的文字,按照排版要求,應該是這樣的(當然,在文本中,如果打開,其實就是排好版的樣子)。

復制代碼 代碼如下:

"dict() -> new empty dictionary
dict(mapping) -> new dictionary initialized from a mapping object's
(key, value) pairs
dict(iterable) -> new dictionary initialized as if via:
d = {}
for k, v in iterable:
d[k] = v
dict(**kwargs) -> new dictionary initialized with the name=value pairs
in the keyword argument list. For example: dict(one=1, two=2)"

可能排版還是不符合愿意。不過,看官也大概能看明白了。我要說的不是排版,要說的是告訴看官一種查看某個數(shù)據(jù)類型含義的方法,就是通過obj.doc文件來看。

嘿嘿,其實有一種方法,可以看到排版的結(jié)果的:

復制代碼 代碼如下:

>>> print dict.__doc__
dict() -> new empty dictionary
dict(mapping) -> new dictionary initialized from a mapping object's
    (key, value) pairs
dict(iterable) -> new dictionary initialized as if via:
    d = {}
    for k, v in iterable:
        d[k] = v
dict(**kwargs) -> new dictionary initialized with the name=value pairs
    in the keyword argument list.  For example:  dict(one=1, two=2)

上面那么折騰一下,就是為了湊篇幅,不然這個總結(jié)的東西太少了。

總之,只要用這種方法,你就能得到所有幫助文檔,隨時隨地。如果可以上網(wǎng),到官方網(wǎng)站,是另外一種方法。

還需要再解釋別的嗎?都多余了。唯一需要的是看官要能會點英語。不過我相信看官能夠讀懂,我這個二把刀都不如的英語水平,還能湊合看呢,何況看官呢?

總結(jié)不是意味著結(jié)束,是意味著繼往開來。精彩還在后面,這里只是休息。

相關文章

最新評論