python常用模組

來源:互聯網
上載者:User

標籤:python   產生器   運算式   空間   start   

yield
  • yield的語句形式 yield 1

  • yield的運算式形式 x=yield

運算式形式的yield,協程函數
def eater(name):    print(‘%s ready to eat‘ %name)    while True:        food yield        print(‘%s start to eat %s‘%(name,food))g=eater(‘Tom‘) #製作產生器next(g) #產生器初始化,執行時碰到yield暫停,相當g.send(None)g.send(‘黃燜雞‘) #在暫停處繼續運行,將值傳給food
 功能
  1. x=yield

  2. g.send(‘111‘),先把111傳給yield,由yield賦值給x

  3. 然後再往下執行,知道再次碰到yield停止,然後把yield後的傳回值返回

匯入包
  • 包是包含有init.py檔案的目錄

  • 包的用途:是從目錄級組織模組

  • 包相當於一個模組,本質還是給使用者

匯入模組乾的事情
  1. 產生新的名稱空間

  2. 以建立的名稱空間為全域名稱空間,執行模組中的代碼

  3. 拿到模組名,指向該模組差生的名稱空間

if  name == ‘ main

此時當做指令碼執行 將需要執行的部分和需要被匯入的部分分開

模組搜尋路徑
  • 先從記憶體找 ---> 內建模組 ---> sys.path路徑

常用模組time
  • 時間戳記 print(time.localtime().tm_year)

  • 格式化輸出 print(time.strtime(‘%Y-&m-%d %H:%M:%S‘))

json
  • 把資料從記憶體中序列化的儲存到磁碟中 序列化過程:dic ---> res=json.dumps(dic)--->f.write(res) 還原序列化過程:res=f.read()--->res.json.loads(res)--->dic=reswith open(‘a.json‘,‘r‘) as f: dic=json.loads(f.read()) print(dic,type(dic))

json便捷操作
  1. 序列化 import json dic={ ‘go‘:‘die‘, ‘hehe‘:‘哈哈‘, } json.dump(dic,open(‘b.json‘,‘w‘)) #直接開啟檔案寫入

  2. 還原序列化

res=json.load(open(‘b.json‘,‘r‘)) #直接開啟json檔案 print(res,type(res))

pickle只支援python這種語言os & sys
`import osprint(os.getcwd()) #當前所在目錄print(os.listdir()) #目前的目錄下檔案print(os.name)print(os.path.abspath(‘‘))print(os.path.getsize(r‘C:\Users\Administrator\PycharmProjects\17\day6‘))print(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) #取出目錄名字`import sys,timeprint(sys.argv)  # list形式取出當前絕對路徑形式的名字print(sys)for i in range(50):    sys.stdout.write(‘%s\r‘ % (‘#‘ * i)) #\r 為移動到行首    sys.stdout.flush() #立即重新整理到終端    time.sleep(0.1)
logging模組記錄層級種類,數值越大越嚴重,從數值小的開始匹配
  1. CRITICAL = 50

  2. FATAL = CRITICAL

  3. ERROR = 40

  4. WARNING = 30

  5. WARN = WARNING

  6. INFO = 20

  7. DEBUG = 10

  8. NOTSET = 0

    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=40,    )logging.debug(‘debug‘)logging.info(‘info‘)logging.warning(‘warning‘)logging.error(‘error‘)logging.critical(‘critical‘)


本文出自 “11860872” 部落格,請務必保留此出處http://11870872.blog.51cto.com/11860872/1934046

python常用模組

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.