python學習之三
匯入一些常用庫和使用:
OS庫
getcwd -> 獲取當前目錄 chdir -> 改變當前目錄 system ->呼叫shell命令 (改變當前目錄的目的就是可以在其他目錄進行別的操作)
>>> import os
>>> os.getcwd()
`/home/lihe/hanxinsemi/trunk/sandbox/python`
>>> os.chdir(`/home/lihe`)
>>> os.system(`mkdir today`)
0
shutil 庫
將 前者 複製成 後者 在當前目錄, move操作將當前目錄下的檔案到別的目錄下 是剪下的形式,不是複製!
>>> import shutil
>>> shutil.copyfile(`test1.txt`, `test1.bak`)
>>> shutil.move(`test1.bak`, `./move`)
glob庫
搜尋當前目錄下該型別檔案,並以list形式列出
>>> import glob
>>> glob.glob(`*.txt`)
[`test1.txt`, `example.txt`, `test2.txt`, `test.txt`]
sys庫
取引數列表,就像mian(int argv, char **argc)一樣 ,python也可以取出引數列表,比較方便!
$ ./test.py one two three
import sys
print sys.argv
[`./test.py`, `one`, `two`, `three`]
argparse庫
類似使用者友好命令列介面,可以提供help服務,可以對輸入的引數列表進行處理,自動輸出想要的結果,可以有預設的引數設定:
import argparse
parser = argparse.ArgumentParser(description=`Process some integers.`)
parser.add_argument(`integers`, metavar=`N`, type=int, nargs=`+`,
help=`an integer for the accumulator`)
parser.add_argument(`--sum`, dest=`accumulate`, action=`store_const`,
const=sum, default=min,
help=`sum the integers (default: find the max)`)
args = parser.parse_args()
print args.accumulate(args.integers)
$ ./test.py -h
usage: test.py [-h] [--sum] N [N ...]
Process some integers.
positional arguments:
N an integer for the accumulator
optional arguments:
-h, --help show this help message and exit
--sum sum the integers (default: find the max)
[lihe@hxsrv1 python]$ ./test.py 1 2 3 4
4
[lihe@hxsrv1 python]$ ./test.py 1 2 3 4 --sum
10
[lihe@hxsrv1 python]$ vi test.py
[lihe@hxsrv1 python]$ ./test.py 1 2 3 4
1
subprocess庫
呼叫外部命令,比如shell指令碼:
>>> import subprocess
>>> subprocess.call(["ls", "-l"])
total 44
-rw-rw-r-- 1 lihe lihe 59 Dec 6 17:45 example.txt
drwxrwxr-x 2 lihe lihe 4096 Dec 10 09:53 move
-rw-rw-r-- 1 lihe lihe 349 Dec 10 08:59 test1.txt
-rw-rw-r-- 1 lihe lihe 11 Dec 10 09:25 test2.txt
-rwxrwxr-x 1 lihe lihe 1008 Dec 10 10:26 test.py
-rw-rw-r-- 1 lihe lihe 0 Dec 10 08:32 test.txt
0
>>> subprocess.call("exit 1", shell=True)
1
相關文章
- 分割槽表學習之三
- mssql配置學習筆記之三SQL筆記
- JUnit5學習之三:Assertions類
- Elasticsearch聚合學習之三:範圍限定Elasticsearch
- Delphi5學習筆記之三筆記
- Python學習之三大名器-裝飾器、迭代器、生成器Python
- jackson學習之三:常用API操作API
- 學車手記之三 練習移庫(zt)
- mssql最佳化學習筆記之三SQL筆記
- 系統學習iOS動畫之三:圖層動畫iOS動畫
- Gradle學習之三Groovy高階語法Gradle
- 《Mastering Delphi6》學習筆記之三 (轉)AST筆記
- 學習python多久?該如何學習python?Python
- 跨行業如何學習好python?Python學習!行業Python
- 如何高效的學習python?python學習技巧Python
- Python如何快速學習?Python學習方法技巧!Python
- hive學習筆記之三:內部表和外部表Hive筆記
- Linux基本命令學習之三:cat tac nl moreLinux
- 《轉》VMware vSphere 5.1 學習系列之三:安裝 ESXi
- PYTHON 學習Python
- 學習pythonPython
- python學習Python
- 你適合學習python嗎?python學習人群Python
- 如何學習Python?Python學習入門路線Python
- 【美妙的Python之三】Python 物件解析Python物件
- gRPC學習之三:初試GO版gRPC開發RPCGo
- java基礎學習之三:方法的過載和重寫Java
- Shell程式設計基礎學習之三:變數和test程式設計變數
- hive學習之三:專案中的hive優化實踐Hive優化
- 學習Python需要考證嗎?Python學習入門!Python
- python值得學習嗎?為何推薦學習python?Python
- 學習Python需要注意什麼?如何學習Python?Python
- python學習: 如何循序漸進學習Python語言Python
- Python深度學習Python深度學習
- [python]pandas學習Python
- python學習1Python
- python學習《一》Python
- Python 學習3Python