在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Python/ 輸入/輸出
備份腳本——版本四
使用 <strong>init</strong> 方法
控制流
異常
表 15.1 一些特殊的方法
如何創(chuàng)建你自己的模塊
使用字典
前言
使用默認參數(shù)值
表 5.1 運算符與它們的用法
解決問題——編寫一個 Python 腳本
使用 for 語句
使用 continue 語句
使用元組輸出
對象與參考
使用函數(shù)形參
使用默認參數(shù)值
使用 if 語句
如何引發(fā)異常
使用源文件
使用對象的方法
使用表達式
定義函數(shù)
使用局部變量
使用列表綜合
使用 sys.argv
使用 lambda 形式
使用 global 語句
備份腳本——版本二
使用列表
使用 while 語句
備份腳本——版本一
使用元組
輸入/輸出
使用類與對象的變量
使用 sys 模塊
表 5.2 運算符優(yōu)先級
處理異常
使用 break 語句
函數(shù)
基本概念
運算符與表達式
介紹
使用文件
使用序列
接下來學(xué)習(xí)什么?
使用帶提示符的 Python 解釋器
使用 DocStrings
使用字面意義上的語句
最初的步驟
數(shù)據(jù)結(jié)構(gòu)
儲存與取儲存
使用 dir 函數(shù)
模塊
Python 標準庫
備份腳本——版本三(不工作?。?/span>
創(chuàng)建一個類
安裝 Python
面向?qū)ο蟮木幊?/span>
使用模塊的<strong>name</strong>
使用變量和字面意義上的常量
使用繼承

輸入/輸出

在很多時候,你會想要讓你的程序與用戶(可能是你自己)交互。你會從用戶那里得到輸入,然后打印一些結(jié)果。我們可以分別使用 raw_input 和 print 語句來完成這些功能。對于輸出,你也可以使用多種多樣的 str(字符串)類。例如,你能夠使用 rjust 方法來得到一個按一定寬度右對齊的字符串。利用 help(str)獲得更多詳情。

另一個常用的輸入/輸出類型是處理文件。創(chuàng)建、讀和寫文件的能力是許多程序所必需的,我們將會在這章探索如何實現(xiàn)這些功能。

文件

你可以通過創(chuàng)建一個 file 類的對象來打開一個文件,分別使用 file 類的 read、readline 或 write 方法來恰當?shù)刈x寫文件。對文件的讀寫能力依賴于你在打開文件時指定的模式。最后,當你完成對文件的操作的時候,你調(diào)用 close 方法來告訴 Python 我們完成了對文件的使用。

使用文件

例 12.1 使用文件


    #!/usr/bin/python
    # Filename: using_file.py

    poem = '''\
    Programming is fun
    When the work is done
    if you wanna make your work also fun:
        use Python!
    '''

    f = file('poem.txt', 'w') # open for 'w'riting
    f.write(poem) # write text to file
    f.close() # close the file

    f = file('poem.txt')
    # if no mode is specified, 'r'ead mode is assumed by default
    while True:
    line = f.readline()
    if len(line) == 0: # Zero length indicates EOF
        break
    print line,
    # Notice comma to avoid automatic newline added by Python
    f.close() # close the file

(源文件:code/using_file.py

輸出


    $ python using_file.py
    Programming is fun
    When the work is done
    if you wanna make your work also fun:
        use Python!

它如何工作

首先,我們通過指明我們希望打開的文件和模式來創(chuàng)建一個 file 類的實例。模式可以為讀模式('r')、寫模式('w')或追加模式('a')。事實上還有多得多的模式可以使用,你可以使用 help(file)來了解它們的詳情。

我們首先用寫模式打開文件,然后使用 file 類的 write 方法來寫文件,最后我們用 close 關(guān)閉這個文件。

接下來,我們再一次打開同一個文件來讀文件。如果我們沒有指定模式,讀模式會作為默認的模式。在一個循環(huán)中,我們使用 readline 方法讀文件的每一行。這個方法返回包括行末換行符的一個完整行。所以,當一個 空的 字符串被返回的時候,即表示文件末已經(jīng)到達了,于是我們停止循環(huán)。

注意,因為從文件讀到的內(nèi)容已經(jīng)以換行符結(jié)尾,所以我們在 print 語句上使用逗號來消除自動換行。最后,我們用 close 關(guān)閉這個文件。

現(xiàn)在,來看一下 poem.txt 文件的內(nèi)容來驗證程序確實工作正常了

儲存器

Python 提供一個標準的模塊,稱為 pickle。使用它你可以在一個文件中儲存任何 Python 對象,之后你又可以把它完整無缺地取出來。這被稱為 持久地 儲存對象。

還有另一個模塊稱為 cPickle,它的功能和 pickle 模塊完全相同,只不過它是用 C 語言編寫的,因此要快得多(比pickle 快 1000 倍)。你可以使用它們中的任一個,而我們在這里將使用 cPickle 模塊。記住,我們把這兩個模塊都簡稱為 pickle 模塊。

儲存與取儲存

例 12.2 儲存與取儲存


    #!/usr/bin/python
    # Filename: pickling.py

    import cPickle as p
    #import pickle as p

    shoplistfile = 'shoplist.data'
    # the name of the file where we will store the object

    shoplist = ['apple', 'mango', 'carrot']

    # Write to the file
    f = file(shoplistfile, 'w')
    p.dump(shoplist, f) # dump the object to a file
    f.close()

    del shoplist # remove the shoplist

    # Read back from the storage
    f = file(shoplistfile)
    storedlist = p.load(f)
    print storedlist

(源文件:code/pickling.py

輸出


    $ python pickling.py
    ['apple', 'mango', 'carrot']

它如何工作

首先,請注意我們使用了 import..as 語法。這是一種便利方法,以便于我們可以使用更短的模塊名稱。在這個例子中,它還讓我們能夠通過簡單地改變一行就切換到另一個模塊(cPickle 或者 pickle)!在程序的其余部分的時候,我們簡單地把這個模塊稱為 p。

為了在文件里儲存一個對象,首先以寫模式打開一個 file 對象,然后調(diào)用儲存器模塊的 dump 函數(shù),把對象儲存到打開的文件中。這個過程稱為 儲存 。

接下來,我們使用 pickle 模塊的 load 函數(shù)的返回來取回對象。這個過程稱為 取儲存 。

概括

我們已經(jīng)討論了多種類型的輸入/輸出,及文件處理和使用儲存器模塊。

接下來,我們將探索異常的概念。