欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python程序輸出無內(nèi)容的解決方式

 更新時間:2020年04月09日 11:39:25   作者:賈己人  
這篇文章主要介紹了python程序輸出無內(nèi)容的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

問題緣由

某項目中使用python腳本方式將日志文件中的數(shù)據(jù)持續(xù)的轉(zhuǎn)換格式輸出到另一文件中以供其他日志分析應(yīng)用使用。但是當后臺運行采取重定向方式輸出到某一文件時,發(fā)現(xiàn)并沒有內(nèi)容輸出,命令如下:

python xxx.py > xxx.log &

測試發(fā)現(xiàn),當前臺直接輸出到終端時正常,使用后臺運行重定向的方式輸出到文件中時無法輸出。

解決辦法

發(fā)現(xiàn)是在程序運行時,輸出有緩存,只有當程序運行結(jié)束或者緩沖區(qū)滿后才會輸出。因為程序是一致在運行的所以不可能等待程序結(jié)束在輸出。并且要求是有實時性的所以等緩沖區(qū)滿輸出的方式也不可取。

所以采用在python運行時加上-u參數(shù),如:

python -u xxx.py > xxx.log &

-u參數(shù)的意義是不使用緩沖的方式輸入輸出

詳細如下:

Force stdin, stdout and stderr to be totally unbuffered. On systems where it matters, also put stdin, stdout and stderr in binary mode. Note that there is internal buffering in xreadlines(), readlines() and file-object iterators (“for line in sys.stdin”) which is not influenced by this option. To work around this, you will want to use “sys.stdin.readline()” inside a “while 1:” loop.

補充知識:python中運行代碼時沒有報錯但是也沒有輸出而且還有exit code 0的結(jié)束標志

如下所示:

f=open("passwd.txt",'r')
print (f.read(4))
f.close()

這是想要執(zhí)行的代碼

passwd.txt中的內(nèi)容

ntp:x:38:38::/etc/ntp:/sbin/nologin
apache:x:48:48:Apache:/var/www:/sbin/nologin
saslauth:x:498:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
pulse:x:497:496:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin

但是輸出的結(jié)果是

Process finished with exit code 0

后來排查發(fā)現(xiàn)原來是解釋器的問題

我之前使用的解釋器是pycharm提供的虛擬解釋器

#####如何查看解釋器

點file–>new projects

如果選擇的是2就是使用了pycharm提供的虛擬解釋器,又因為passwd.txt文件不是在虛擬環(huán)境中的所以就沒有輸出。

點擊3然后選擇你已經(jīng)下載好的解釋器即可。

以上這篇python程序輸出無內(nèi)容的解決方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python 中的 XML 轉(zhuǎn)換利器xml2dict詳解

    Python 中的 XML 轉(zhuǎn)換利器xml2dict詳解

    xml2dict是一個Python庫,可以將XML數(shù)據(jù)轉(zhuǎn)換為字典,也支持反向轉(zhuǎn)換,它簡化了XML的處理,使之像處理JSON一樣簡單,適用于Web服務(wù)數(shù)據(jù)交換、配置文件讀取等場景,安裝簡單,使用方便,還可以通過自定義轉(zhuǎn)換器處理XML屬性和命名空間
    2024-10-10
  • python如何導(dǎo)入自己的模塊

    python如何導(dǎo)入自己的模塊

    這篇文章主要介紹了python如何導(dǎo)入自己的模塊,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Eclipse中Python開發(fā)環(huán)境搭建簡單教程

    Eclipse中Python開發(fā)環(huán)境搭建簡單教程

    這篇文章主要為大家分享了Eclipse中Python開發(fā)環(huán)境搭建簡單教程,步驟簡潔,一目了然,可以幫助大家快速搭建python開發(fā)環(huán)境,感興趣的小伙伴們可以參考一下
    2016-03-03
  • django 自定義用戶user模型的三種方法

    django 自定義用戶user模型的三種方法

    這篇文章主要介紹了django 自定義用戶user模型的三種方法,需要的朋友可以參考下
    2014-11-11
  • Python 字典dict使用介紹

    Python 字典dict使用介紹

    這篇文章主要介紹了Python 字典dict使用介紹,需要的朋友可以參考下
    2014-11-11
  • Pytorch中的model.train()?和?model.eval()?原理與用法解析

    Pytorch中的model.train()?和?model.eval()?原理與用法解析

    pytorch可以給我們提供兩種方式來切換訓(xùn)練和評估(推斷)的模式,分別是:model.train()?和?model.eval(),這篇文章主要介紹了Pytorch中的model.train()?和?model.eval()?原理與用法,需要的朋友可以參考下
    2023-04-04
  • OpenCV+python3實現(xiàn)視頻分解成圖片

    OpenCV+python3實現(xiàn)視頻分解成圖片

    這篇文章主要為大家詳細介紹了OpenCV+python3實現(xiàn)視頻分解成圖片,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Python正則表達式分組概念與用法詳解

    Python正則表達式分組概念與用法詳解

    這篇文章主要介紹了Python正則表達式分組概念與用法,結(jié)合具體實例形式較為詳細的分析了Python正則表達式中分組、引用、斷言等概念與相關(guān)使用技巧,需要的朋友可以參考下
    2017-06-06
  • numpy向空的二維數(shù)組中添加元素的方法

    numpy向空的二維數(shù)組中添加元素的方法

    今天小編就為大家分享一篇numpy向空的二維數(shù)組中添加元素的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • Python實現(xiàn)生成隨機日期字符串的方法示例

    Python實現(xiàn)生成隨機日期字符串的方法示例

    這篇文章主要介紹了Python實現(xiàn)生成隨機日期字符串的方法,涉及Python日期時間及隨機數(shù)運算相關(guān)操作技巧,需要的朋友可以參考下
    2017-12-12

最新評論