【os.path.的一些功能】:
根據實際專案中的例子來理解一下大體的用法,目前只接觸了幾個方法 例1
:我是在c:\python\django\ttsx2\ttsx_goods\views.py工作,
執行環境是在c:\python\django\ttsx2下,此時我執行命令去執行views.py。
當在views.py下寫下這句**:
f = os.path.dirname(__file__)
:**的意思是返回執行指令碼所在的路徑,這裡輸出f會返回空。如果執行環境是c:\python\django\ttsx2\ttsx_goods\views.py,輸出f後返回值會是c:\python\django\ttsx2\ttsx_goods。
當在views.py注釋掉第一句**並下寫下這句**:
f = os.path.abspath(__file__)
:**的意思是返回執行指令碼所處的絕對路徑,輸出f會返回c:\python\django\ttsx2\ttsx_goods\views.py。
所以一般開發中都會寫成下面這種形式:
f = os.path.dirname(os.path.abspath(__file__)):
意思是先去獲取指令碼的絕對路徑得到
c:\python\django\ttsx2\ttsx_goods\views.py,
接著返回指令碼所在的目錄
c:\python\django\ttsx2\ttsx_goods
那麼同理,我這樣寫:
f = os.path.dirname(os.path.dirname(os.path.abspath(__file__))):
可以得到
c:\python\django\ttsx2。
理解以後看這個需求:我目前在ttsx2\ttsx_goods\views.py下工作,接下來我想在ttsx2路徑下的static資料夾下工作該怎麼做?看下面
f = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), 'static'):
獲取到c:\python\django\ttsx2
然後進行join路徑拼接,拼接到static路徑中
總結:
1,執行帶(__file__)的語句時,必須要在實際存在的.py檔案中執行,如果是在命令列執行會報異常nameerror: name '__file__' is not defined 2,
dirname(__file__)如果不輸入完整路徑是不會返回路徑的,所以一般都會配合asbpath()來使用
【 pip與apt-get的區別在哪兒呢?】:
pip用來安裝來自pypi的python所有的依賴包,並且可以選擇安裝任何在pypi上已上傳的先前版本的依賴包
apt-get可以用來安裝軟體、更新源、也可以用來更新自ubuntu的典型依賴包,即意味著它只是安裝(最新發布的,或最近乙個的)單一版本,並且我們不能決定我們要安裝的依賴包的版本或選擇它之前的版本。
【什麼時候該用pip,什麼時候該用apt-get呢?】:
如果你需要最新版本的python依賴包,你可以直接使用apt-get,在專案突然需要使用舊版本的依賴包時,你就可以使用virtualenv和pip來使完美得再安裝上乙個舊版本的依賴包;
如果你需要安裝python包的特定版本,或在virtualenv中安裝包,或安裝只託管pypi上乙個包,此時只有pip會幫你解決這個問題了。
apt-get
apt-get
命令一般需要
root許可權
執行,所以一般跟著 sudo命令:
【sudo apt-get install 安裝】-- 【sudo apt-get remove 移除】
【 sudo apt-get update 更新源】--【sudo apt-get upgrade 更新已安裝的包】
%格式化小例子:
a = 123,b = '%d, %06d' % (a, a)-->b = '123,000123' 格式化前加0的意思為補零
a = 12.32, b = '%f...%.1f...%05.1f' % (a,a,a)-->b = '12.32...12.3...012.3'
a = , b = '%(a)d...%(b)s' % a-->b = '1...ab' 基於字典形式的格式化操作
內建函式vars(): a = 5, b = 4 vars()--> vars()會把所有呼叫這個函式之前存在的變數轉換為字典的鍵值對
自學python記錄1
上次參加個學校的功放大賽,裡面有乙個關於提取ip並計算所有埠號是80的ip位址的總和,但不計算埠號,最終我們小組的同學用c完成了這道大題,但答疑的時候學長說用python會容易很多,this讓我想到了去年功放題裡面的那個進製轉換的題,資料龐大得驚人,本準備用c寫的,但後來發現越界了,無奈之下只能用計...
python小知識 Python小知識
1 python是一種解釋性語言,當程式執行時,一行一行的解釋,並執行 優點 除錯 很方便,開發效率高,並且可以跨平台 不但入門容易,而且將來深入下去,可以編寫那些非常非常複雜的程式。缺點 執行速度慢。python的種類 cpython ipython pypy jython ironpython ...
python小知識 python小知識
一 列表 l 1,2 m l l和m同時指向列表物件,內容為 1,2 l l 3,4 系統新增了乙個物件,內容為 1,2,3,4 l,m 1,2,3,4 1,2 l 1,2 m l l 3,4 對列表在原處做修改 l,m 1,2,3,4 1,2,3,4 二 python程式設計中的中文編碼問題 問題...