os/sys/json/pickle/loggingモジュール

3062 ワード

osモジュール
os作用:オペレーティングシステムと対話し、ファイル/フォルダを制御する
フォルダの操作:
os.rmdir(r'    ')   #      ***

os.mkdir(r'    ')   #      ***

os.listdir('    ')  #              *** 

 #    
res = os.getcwd()   #           

res = os.path.abspath(__file__) #                __file__  pycharm  

os.path.dirname(__file__)   #               ***
os.path.jion(os.path.dirname(__file__),'mood.jpp')  #     ***

ファイルの操作:
os.path.isfile(r'') #        

os.remove(r'')  #     ***

os.rename(r'',r'')  #      

Sysモジュール
pythonインタラクション
res = sys.argv  #            ,       

jsonモジュール
jsonモジュール:プラットフォーム間データインタラクション、json列タイプ
シーケンス化:特定のルールに従ってソート(json列--->プラットフォーム間でインタラクティブにデータを転送)
逆シーケンス化:特定のルールに従ってjson列をpython/java/c/phpに必要なデータ型に変換
dic = {'a':1,'b':2}

res = json.dumps(dic) #     jon      


json.loads(res)     #     


#       json ,     
with open('text,json','w',encoding='utf8') as fw:
    json.dump(dic.fw) # dump    ,dumps    
    
    
#     
with open('text.json','r',enconding='utf8') as fr:
    data=json.load(fr)

pickleモジュール
jsonモジュール:プラットフォームにまたがらずpythonのすべてのデータ型に対して、使用方法はjsonとそっくりです.
シーケンス化:特定のルールに従ってソート(json列--->プラットフォーム間でインタラクティブにデータを転送)
逆シーケンス化:特定のルールに従ってjson列をpython/java/c/phpに必要なデータ型に変換
s = {1,2,3,4}

with open('text.pkl','wb') as fw:
    pick.dump(s,fw)
    
with open('text.pkl','rb') as fr:
    data = pickle.load(fr)

loggingモジュール
loggingレベル
 #     (     ,    30  )
logging.info()  # 10
logging.debug() #20
logging.warning()   #30 
logging.error() #40
logging.critical()  #50

ログの基本構成
import logging

logging.basicConfig(filename='access.log',
                    format='%(asctime)s - %(name)s - %(levelname)s -%(module)s: %                           (message)s',
                    datefmt='%Y-%m-%d %H:%M:%S %p',
                    level=10)

logging.info()  # 10
logging.debug() #20
logging.warning()   #30 
logging.error() #40
logging.critical()  #50

カスタム構成
 # 1.  logger  ,      ,      
jim_logger = logging.logger('jim')

 # 2.    
formmater1 = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s -%(module)s:  %(message)s',
                               datefmt='%Y-%m-%d %H:%M:%S %p',)

formmater2 = logging.Formatter('%(asctime)s :  %(message)s',
                               datefmt='%Y-%m-%d %H:%M:%S %p',)

formmater3 = logging.Formatter('%(name)s %(message)s',)

 # 3.  handler--->     or     
h1 = logging.FileHandler(jim.log)
sm = logging.StreamHandler #     

 # 4. handler    
h1.setFormatter(formmater1)
sm.setFormatter(formmater3)

 # 5. handler   logger   
jim_logger.addHandler(h1)

 # 6.    
jim_logger.info(f'jim'       )