2013-06-20 25 views
2

時,日誌記錄不寫入文件當前,如果從python命令行運行以下代碼,它會按預期寫入由filename指定的文件。當從函數中調用Pyscripter

import logging 
def test(): 
    logging.basicConfig(format='%(asctime)s %(message)s', 
         datefmt='%m/%d/%Y %I:%M:%S %p', 
         filename=r'C:\Users\theo\Documents\myLog.txt') 
    logging.warning('Example logged message.') 
test() 

但是當我將代碼複製到我的功能之一,運行與Pyscripter的功能,它似乎並沒有寫入文件。 我怎樣才能讓日誌出現在Pyscripter中?

+0

你將需要向我們展示一些代碼,並且通常會給我們更多的信息。頂層腳本中的函數還是導入的模塊?你真的在做函數中的'import logging'和'logging.basicConfig(...)'嗎? (也是所有的愚蠢的東西,如:是實際被調用的函數?) – abarnert

+0

考慮http://pastebin.com/CWbDTb0c – TheoretiCAL

+0

這兩個片段中的文件名顯示不同,這是真的嗎? – moooeeeep

回答

4

Pyscripter有一個'外部運行'選項(運行>外部運行(Alt + F9)),選擇此項使得日誌工作。

+1

只需要通過菜單選項運行>外部運行(Alt + F9)來訪問「外部運行」方法,並將日誌信息定向到輸出選項卡而不是Python解釋器選項卡。 – Hornbydd

1

將Python引擎切換到內部。去運行 - > Pyhton引擎 - >內部