python會話 Python在互動式會話中登入

2021-10-19 01:54:31 字數 1077 閱讀 9343

我試圖在python 2.7應用程式中實現日誌記錄,並發現它非常有用。但是,我注意到,在互動式執行python時,每個日誌訊息都會多次列印。訊息的列印次數與先前執行指令碼的次數相同,因此似乎記錄器未在指令碼末尾正確清理(我猜測)。考慮下面的例子:

import sys

import logging

def main(ar**=none):

log = logging.getlogger('test')

log.setlevel(logging.debug)

console_handler = logging.streamhandler()

console_handler.setformatter(logging.formatter("%(message)s"))

log.addhandler(console_handler)

log.info('starting something...')

log.info('doing something...')

log.info('finished something.')

logging.shutdown()

if __name__=='__main__':

sys.exit(main(sys.ar**[1:]))打字

>>> import file.py

>>> file.main()產生以下結果:

starting something...

doing something...

finished something.然後再次輸入file.main()會產生:

starting something...

starting something...

doing something...

doing something...

finished something.

finished something.重複第三次將給出三個或每個訊息等等。有誰知道為什麼會發生這種情況 - 這是日誌模組的預期行為,如果是這樣,我該如何改變這種情況?正如預期的那樣,如果以指令碼形式執行(python file.py),以上指令碼僅列印每條訊息之一。

python會話 python會話?

這可能是乙個老問題,但我面臨著同樣的問題 python中沒有內建的會話支援。我編寫了乙個簡單的會話處理程式,可能對某些人有用 usr bin python coding utf 8 import tempfile import hashlib import os import time import...

Python終端會話是什麼

終端是linux裡的叫法,windows下面叫做命令提示符,所有的windows系統直接按你鍵盤上的win r 後,在執行框裡輸入cmd確定就行了。下面演示分別演示windows系統下從終端啟動python,及python的互動模式和命令列模式 終端啟動python win r,在執行框裡輸入cmd...

linux 在X會話內部執行X會話

xfree86是linux作業系統圖形介面的基礎。儘管她在很 多方面顯得有些過時,但是其功能還是相當強大。使用linux的好處之一是你可以使用乙個名為xnest的程式在乙個會話視窗中執行另乙個x會話。正如其名稱一樣,xnest程式允許你不需要關 閉當前的會話視窗就可以執行另乙個全屏的x會話。為了巢狀...