python内蔵モジュールosとsys
8196 ワード
一、OSモジュール
システム・レベルの操作を提供します.
二、SYSモジュール
インタプリタに関連する操作を提供するために使用されます
sys.argv取得パラメータ
sys.exit終了プログラム
sys.stoutリダイレクト出力
sys.pathシステム環境変数の追加
システム・レベルの操作を提供します.
OS
os.getcwd() , python
os.chdir("dirname") ; shell cd
os.curdir : ('.')
os.pardir :('..')
os.makedirs('dirname1/dirname2')
os.removedirs('dirname1') , , , , ,
os.mkdir('dirname') ; shell mkdir dirname
os.rmdir('dirname') , , ; shell rmdir dirname
os.listdir('dirname') , ,
os.remove()
os.rename("oldname","newname") /
os.stat('path/filename') /
os.path.abspath(path) path
os.path.split(path) path
os.path.dirname(path) path 。 os.path.split(path)
os.path.basename(path) path 。 path / \ , 。 os.path.split(path)
os.path.exists(path) path , True; path , False
os.path.isabs(path) path , True
os.path.isfile(path) path , True。 False
os.path.isdir(path) path , True。 False
os.path.join(path1[, path2[, ...]]) ,
os.path.getatime(path) path
os.path.getmtime(path) path
os.sep ,win "\\",Linux "/"
os.linesep ,win "\t
",Linux "
"
os.pathsep
os.name 。win->'nt'; Linux->'posix'
os.system("bash command") shell ,
os.environ
import os
#
BASE_DIR = os.path.dirname(__file__)
print BASE_DIR
#
NEW_PATH = os.path.join(BASE_DIR,"qq.py")
print NEW_PATH
二、SYSモジュール
インタプリタに関連する操作を提供するために使用されます
sys.argv List,
sys.exit(n) , exit(0), exit(1)
sys.version Python
sys.maxint Int
sys.path , PYTHONPATH
sys.platform
sys.stdout.write('please:')
val = sys.stdin.readline()[:-1]
sys.argv取得パラメータ
import sys
print "script name is", sys.argv[0] # sys.argv[0]
if len(sys.argv) > 1:
# len(sys.argv)-1 -1 [0]
print "there are", len(sys.argv) - 1, "arguments:"
for arg in sys.argv[1:]: # [0]
print arg
else:
print "there are no arguments!"
sys.exit終了プログラム
# :
import sys
print "hello"
try:
sys.exit(1)
except SystemExit: #
pass #
print "there"
# :
# ( ), " "(exit handler),
def exitfunc():
print "world"
sys.exitfunc = exitfunc #
print "hello"
sys.exit(1) # exitfunc() ,
print "there" # print
sys.stoutリダイレクト出力
import sys
print 'Dive in' #
saveout = sys.stdout # stdout,
fsock = open('out.log', 'w')
sys.stdout = fsock # 。
print 'This message will be logged instead of displayed' # “ ” ;
sys.stdout = saveout # stdout , 。
fsock.close() # 。
sys.pathシステム環境変数の追加
import sys,os
#
dir = os.path.dirname(os.path.dirname(__file__))
sys.path.append(dir)