Python學習目錄python
在計算機程序的開發過程當中,隨着程序代碼越寫越多,在一個文件裏代碼就會愈來愈長,愈來愈不容易維護。編程
爲了編寫可維護的代碼,咱們把不少函數分組,分別放到不一樣的文件裏,這樣,每一個文件包含的代碼就相對較少,不少編程語言都採用這種組織代碼的方式。在Python中,一個.py文件就稱之爲一個模塊(Module)。網絡
爲了不模塊名衝突,Python又引入了按目錄來組織模塊的方法,稱爲包(Package)。框架
請注意,每個包目錄下面都會有一個__init__.py
的文件,這個文件是必須存在的,不然,Python就把這個目錄當成普通目錄,而不是一個包。__init__.py
能夠是空文件,也能夠有Python代碼,由於__init__.py
自己就是一個模塊。編程語言
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' a test module '
__author__ = 'Michael Liao'
import sys
def test():
args = sys.argv
if len(args)==1:
print('Hello, world!')
elif len(args)==2:
print('Hello, %s!' % args[1])
else:
print('Too many arguments!')
if __name__=='__main__':
test()
複製代碼
第1行和第2行是標準註釋,第1行註釋可讓這個hello.py
文件直接在Unix/Linux/Mac上運行,第2行註釋表示.py文件自己使用標準UTF-8編碼;函數式編程
第4行是一個字符串,表示模塊的文檔註釋,任何模塊代碼的第一個字符串都被視爲模塊的文檔註釋;函數
第6行使用__author__
變量是指做者。工具
以上就是Python模塊的標準文件模板。post
有個注意點:當咱們運行當前模塊文件時,Python解釋器把一個特殊變量__name__
置爲__main__
學習
在一個模塊中,咱們可能會定義不少函數和變量,但有的函數和變量咱們但願給別人使用,有的函數和變量咱們但願僅僅在模塊內部使用。在Python中,是經過
_
前綴來實現的。
正常的函數和變量名是公開的(public),能夠被直接引用,好比:abc
,x123
,PI
等;
相似__xxx__
這樣的變量是特殊變量,能夠被直接引用,可是有特殊用途,好比上面的__author__
,__name__
就是特殊變量,hello
模塊定義的文檔註釋也能夠用特殊變量__doc__
訪問,咱們本身的變量通常不要用這種變量名;
相似_xxx
和__xxx
這樣的函數或變量就是非公開的(private),不該該被直接引用,好比_abc
,__abc
等;
之因此咱們說,private函數和變量「不該該」被直接引用,而不是「不能」被直接引用,是由於Python並無一種方法能夠徹底限制訪問private函數或變量,可是,從編程習慣上不該該引用private函數或變量。
在Python中,安裝第三方模塊,是經過包管理工具pip完成的。
通常來講,第三方庫都會在Python官方的pypi.python.org網站註冊,要安裝一個第三方庫,必須先知道該庫的名稱,能夠在官網或者pypi上搜索,好比Pillow的名稱叫Pillow,所以,安裝Pillow的命令就是:
pip install Pillow
複製代碼
注:在使用Python時,咱們常常須要用到不少第三方庫,例如,上面提到的Pillow,以及MySQL驅動程序,Web框架Flask,科學計算Numpy等。用pip一個一個安裝費時費力,還須要考慮兼容性。咱們推薦直接使用Anaconda,這是一個基於Python的數據處理和科學計算平臺,它已經內置了許多很是有用的第三方庫,咱們裝上Anaconda,就至關於把數十個第三方模塊自動安裝好了,很是簡單易用。