簡明Python教程·PDF下載&附錄
簡明Python教程(Byte-of-Python)PDF文檔:ryuxi.lanzouf.com/ByteofPython
備用鏈接:aliyundrive.com/s/3kwuWh1f3zD
pan.baidu.com/s/1HuYiJaYFYScfHqzbdh6IIw?pwd=bopy 提取碼:bopy

上一篇專欄


附錄:FLOSS?
作者注:請注意這一章撰寫于 2003 年,所以里面有些內(nèi)容對你來說可能已顯得古早。:-)?
“自由/開放源代碼軟件”,簡稱 FLOSS,是一個基于社區(qū)概念而建立的組織,而這一社區(qū)則基 于分享、尤其是知識分享這些概念。FLOSS 的成員軟件均可免費(fèi)使用、修改與分發(fā)。?
如果你已經(jīng)讀完本書,那么你對 FLOSS 概念應(yīng)該已經(jīng)很熟悉了,因為你正在使用的 Python 便是其中一員,而且 Python 還是一款開源軟件!
?下面是一些 FLOSS 的案例,可以幫助你了解社區(qū)共享共建可以創(chuàng)造出什么樣的東西:
?Linux:這是一款 FLOSS 操作系統(tǒng)內(nèi)核,運(yùn)用于 GNU/Linux 操作系統(tǒng)之中。Linux 這一內(nèi)核 是由 Linus Torvalds 在他還是一名學(xué)生時發(fā)起的。Android 系統(tǒng)便是基于 Linux?,F(xiàn)在你所使 用的任何一家網(wǎng)站其中的大部分都運(yùn)行于 Linux 之上。?
?Ubuntu:這是一款由 Canonical 贊助、社區(qū)驅(qū)動的 Linux 發(fā)行版,是目前世界上最流行的 GNU/Linux 發(fā)行版。它允許你通過一款易于使用且易于安裝的管理器安裝大量 FLOSS 成員 軟件。最重要的是,你可以重啟計算機(jī)然后通過 CD 來運(yùn)行 GNU/Linux 系統(tǒng)!這一點(diǎn)能夠允 許你的電腦上安裝新的操作系統(tǒng)前對它進(jìn)行充分的試用。但是,Ubuntu 不是完全的免費(fèi)軟 件,它包括了一些專有的驅(qū)動程序,固件和應(yīng)用程序。
?LibreOffice:這是一款基于社區(qū)驅(qū)動與開發(fā)的優(yōu)秀的辦公套件,包括文檔寫作、演示制作、電 子表格和繪圖組件等諸多內(nèi)容。它甚至可以輕松打開并編輯 MS Word 文件和 MS PowerPoint 文件。它能夠在幾乎所有平臺中運(yùn)行,并且完全免費(fèi)、自由、開源。
?Mozilla Firefox:這就是那一款最好的網(wǎng)絡(luò)瀏覽器。它以速度極快,并且以敏銳且令人印象深 刻的功能獲得了諸多贊譽(yù)。它的擴(kuò)展概念能夠允許用戶使用任何種類的插件。
Mono:這是一款微軟 .NET 平臺的開源實現(xiàn)。它能夠允許在 GNU/Linux,Windows, FreeBSD,MacOS 等其它諸多平臺上創(chuàng)建并使用 .NET 應(yīng)用程序。
?Apache Web 服務(wù)器:這是一款十分流行的開源 Web 服務(wù)器。實際上,它是這個星球上最流 行的 Web 服務(wù)器!在它之上運(yùn)行著世界上超過一半的網(wǎng)站。是的,正是如此——Apache 的 使用量比它的所有對手(包括 Microsoft IIS)加起來還要多。
?VLC 播放器:這款視頻播放器可以播放從 DivX 到 MP3 到 Ogg 到 VCD 到 DVD 等幾乎任何 內(nèi)容。誰說開源沒有樂趣的?;-)?
上面這一列表只是為了給你一個簡單的印象——還有其它許多優(yōu)秀的東西在 FLOSS 里等待你 的發(fā)現(xiàn),例如 Perl 語言,PHP 語言,針對網(wǎng)站的 Drupal 內(nèi)容管理系統(tǒng),PostgreSQL 數(shù)據(jù)服 務(wù)器,TORCS 賽車游戲,KDevelop IDE,Xine 電影播放器,VIM 編輯器,Quanta+ 編輯器,Banshee 音頻播放器,GIMP 圖片編輯程序等等等等,這一列表可以永遠(yuǎn)不斷地羅列下 去。
要想了解 FLOSS 世界的最新動態(tài),你可以訪問以下網(wǎng)站:?
OMG! Ubuntu!?
Web Upd8?
DistroWatch?
Planet Debian?
瀏覽下列網(wǎng)站以了解有關(guān) FLOSS 的更多信息:?
GitHub Explore?
Code Triage?
SourceForge?
FreshMeat?
所以,接著走下去吧,去探索這個廣闊、自由且開放的 FLOSS 世界!

附錄:版本變遷?
我為了編寫本書而使用的幾乎所有軟件都屬于 FLOSS。?
本書的誕生?
在撰寫本書的第一版時,我使用 Red Hat 9.0 Linux 作為我配置的基礎(chǔ),到了第六版時,我使 用 Fedora Core 3 Linux 作為我配置的基礎(chǔ)。
最初,我使用 KWord 來撰寫本書(正如在本書由來里所解釋的那番)。?
成長期?
后來,我切換到 DocBook XML 并使用 Kate 寫作,但我發(fā)現(xiàn)它太繁瑣了。因此,我遷移到 OpenOffice,它具有非常好的控制水準(zhǔn),并且提供了格式化與 PDF 生成功能,但是它從文檔 生成的 HTML 太過潦草。
最后,我發(fā)現(xiàn)了 XEmacs,我(再一次)采用 DocBook XML 重寫了原先那一潦草的版本,并 將這一格式作為長期的解決方案。?
到了第六版時,我決定使用 Quanta+ 來處理所有的編輯工作,并使用 Fedora Core 3 Linux 提供的標(biāo)準(zhǔn) XSL 樣式表。不過,我通過編寫 CSS 文檔來為 HTML 頁面提供顏色與樣式設(shè) 定。我同時還編寫了一個粗糙的詞法分析器,當(dāng)然,用 Python 編寫, 它能夠自動為所列出 的所有程序提供語法高亮。
等到第七版時,我使用 MediaWiki 作為我配置的基礎(chǔ)。我使用它在線編輯幾乎一切內(nèi)容并允 許讀者在 Wiki 網(wǎng)站中直接閱讀、編輯、討論,但是最終我耗費(fèi)了比寫作還要多的時間在打擊 垃圾評論上。?
第八版時我使用 Vim,Pandoc 和 Mac OS X 來寫作。?
第九版時我切換至 AsciiDoc 文檔格式 并使用 Emacs 24.3, tomorrow 主題, Fira Mono 字體 和 adoc-mode 來寫作。
現(xiàn)在
2016 年:我已厭倦去處理 AsciiDoctor 中的幾個小的渲染問題,例如 C/C++ 中的 ++ 會突 然消失,這個問題如其它一些小問題一樣很難追蹤。再加上,因為 Asciidoc 的復(fù)雜格式,我已經(jīng)不愿意再編輯文本。
因此在第十版中,我切換至 Markdown 和 GitBook,并使用它們的格式,通過 Spacemacs editor 來寫作。
關(guān)于作者?
請參閱 http://www.swaroopch.com/about/?

附錄:本書由來?
我第一次使用 Python 是因為我需要為我所編寫的 “鉆石(Diamond)”程序編寫一個安裝程 序,這樣我就能讓安裝過程更加便捷。我必須要在 Qt 庫的 Python 與 Perl 的綁定間做出選 擇。我在網(wǎng)上了做了些研究,然后我便發(fā)現(xiàn)了埃里克·雷蒙(Eric S. Raymond)撰寫的一篇文 章,埃里克是一名著名且備受尊重的黑客,在文章中他說 Python 已經(jīng)成為了他最喜歡的編程語言。同時我也發(fā)現(xiàn)相比起 Perl-Qt 綁定, PyQt 綁定更加成熟。于是,我決定 Python 將成為我要使用的語言。
然后,我便開始搜尋針對 Python 的好書。但是我找不到!我找到了一些 O'Reilly 的書,但它 們都十分昂貴,而且比起教材更像是一本參考手冊。于是我通過 Python 官方文檔來解決了學(xué)習(xí)的問題。不過它們都太簡略短小。它確實提供了有關(guān) Python 的優(yōu)秀觀念與視角,但還不夠完整。我能夠駕馭它是因為我已經(jīng)有了編程經(jīng)驗,但對于新手來說這就完全不適合了。
在我與 Python 第一次接觸的六個月后,我安裝了(在當(dāng)時)最新的 Red Hat 9.0 Linux,并 開始使用 KWord。我對這款軟件興奮不已,突然變有了寫一些有關(guān) Python 的東西的想法。 最開始我只寫了幾頁但很快它便變成了 30 頁長的文章。在這時,我開始認(rèn)真考慮將其演變成 更為有用的圖書形式。在歷經(jīng)了相當(dāng)多的重寫之后,它終于成為一份有所用處的 Python 語言 學(xué)習(xí)指南。我開始考慮將這本書作為我對開源社區(qū)的貢獻(xiàn)與致敬。
? 這本書最初是作為我個人的 Python 筆記而存在,在未來我想還會依舊如此,盡管我已經(jīng)對其 作出了許多努力讓它在他人面前能夠顯得更為可口。:)?
因為有著真正的開源精神,我收到了來自熱心讀者的許多建設(shè)性建議、批評與反饋,這些在 我改進(jìn)這本書的過程中對我?guī)椭H深。?
本書目前的狀態(tài)?
本書需要來自它的讀者幫助,例如由你來指出這本書的任何部分還不夠好,難以理解或整個 就是錯的。請寫信給主要作者 或者向相應(yīng)的譯者提交你的意見和建議。

附錄:修訂歷史
4.0
2016 年 1 月 19日
切換回 Python 3。
切換至 Markdown,采用 GitBook 與 Spacemacs。?
3.0
2014 年 3 月 31 日
為 Python 2 進(jìn)行重寫,采用 AsciiDoc 與 adoc-mode。?
2.0
2012 年 10 月 20 日
在 Pandoc 格式下重寫,感謝我的妻子,是她完成了大部分從 MediaWiki 格式轉(zhuǎn)換 文本的工作。
簡化文本,刪除不必要的部分,諸如 nonlocal 與元類。
1.90
2008 年 9 月 4 日,目前仍在推進(jìn)中
在 3.5 年的止息后重新復(fù)興!
為 Python 3.0 進(jìn)行重寫。
(再次)采用 MediaWiki 進(jìn)行重寫。?
1.20
2005 年 1 月 13 日
在 Fedora Core 3 下使用 Quanta+ 全面重寫。增添了諸多新的案例。重建了我的 DocBook 配置。
1.15
2004 年 3 月 28 日
零散修改。
1.12
2004 年 3 月 16 日
補(bǔ)充與修正。?
1.10
2004 年 3 月 9 日
修正了更多的拼寫錯誤,感謝這么多熱心且大有幫助的讀者。?
1.00
2004 年 3 月 8 日
在讀者提出了大量反饋與建議后,我對內(nèi)容進(jìn)行了重大修訂,并訂正了拼寫錯誤。
0.99
2004 年 2 月 22 日
添加了有關(guān)模塊的章節(jié),增補(bǔ)了有關(guān)函數(shù)中的參數(shù)的變量數(shù)量的更多細(xì)節(jié)。
0.98
2004 年 2 月 16 日
編寫了一個 Python 腳本與 CSS 樣式表來改善 XHTML 輸出,包括一個功能尚顯粗 糙的詞法分析器,用以為列出的程序自動進(jìn)行 VIM 式的加亮。?
0.97
2014 年 2 月 13 日
又一版完全重寫后的新版,(再次)采用 DocBook XML。本書已有大量改進(jìn)——現(xiàn) 在更加連貫且更加易讀。
0.93
2004 年 1 月 25 日
增加了 IDLE 討論與更多 Windows 相關(guān)的特定內(nèi)容。?
0.92
2004 年 1 月 5 日
修改了小部分案例。?
0.91
2003 年 12 月 30 日
訂正輸入錯誤。對諸多話題進(jìn)行改善。
0.90
2003 年 12 月 18 日
新增兩篇章節(jié)。采用 OpenOffice 格式并進(jìn)行了修訂。
0.60
2003 年 11 月 21 日
完全重寫并擴(kuò)充內(nèi)容。?
0.20
2003 年 11 月 20 日
訂正某些輸入錯誤并進(jìn)行勘誤。?
0.15
2003 年 11 月 20 日?
遷移至 DocBook XML 與 XEmacs。
0.10?
2003 年 11 月 14 日?
使用 KWord 的首份草稿。

反饋
本書需要來自它的讀者幫助,例如由你來指出這本書的任何部分還不夠好,難以理解或整個 就是錯的。請 寫信給作者 提交你的意見和建議。
有關(guān)本中文譯本,如果你認(rèn)為書中的某些部分的翻譯存在疏漏或錯譯、誤譯,又或者你覺得 有更好的表述,你可以寫信給譯者提交你的意見或建議。
在向譯者提供反饋時,請?zhí)峁┮韵滦畔ⅲ?/p>
參考譯本版本號,在全書開頭可以查看到。?
與反饋內(nèi)容相關(guān)的章節(jié)位置,如“《面向?qū)ο缶幊獭返摹悺还?jié)”。由于譯者在修訂時是直 接在源文件上修改,提供 PDF/EPUB 的頁數(shù)不便于查找,還請理解。
print("至此本書搬運(yùn)完畢\n"
"搬運(yùn)者:琉璃汐陽\n"
"祝您的Python之旅一路順風(fēng)!")