第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

SLURM 批處理腳本不執(zhí)行 Python 腳本,不返回錯誤消息并且不停止運行

SLURM 批處理腳本不執(zhí)行 Python 腳本,不返回錯誤消息并且不停止運行

青春有我 2023-05-23 14:59:31
在 SLURM 集群中,我提交了一個調(diào)用 python 腳本的 shell 腳本(這兩個腳本都可以在下面找到。當(dāng) shell 腳本執(zhí)行時,它會到達調(diào)用 python 腳本的位置,但隨后什么也沒有發(fā)生:沒有輸出,沒有錯誤消息SLURM 作業(yè)繼續(xù)運行。我假設(shè) python 腳本的全部內(nèi)容都不相關(guān)(但我還是將其包括在內(nèi)以完成)。出于調(diào)試目的,我print("script started")在最開始插入了該行以查看它是否運行但沒有運行。我在輸出中看到的最后一件事是moved to directory.我嘗試在此之前調(diào)用test.py包含的腳本print("test")并且它正常執(zhí)行。python 腳本無法啟動的原因可能是什么,我該如何解決?編輯:由于用戶 jakub 建議更改print("script started")為print("script started", flush=True)成功打印。包括更多這樣的語句表明腳本實際上運行得很好,只是沒有輸出任何東西。在不斷執(zhí)行的 for 循環(huán)中包含相同的語句也會使print()之前丟失的所有語句都被打印出來。那么問題就變成了:為什么print()這里的語句需要在這個腳本中有flush=True,而在其他腳本中不需要呢?
查看完整描述

1 回答

?
叮當(dāng)貓咪

TA貢獻1776條經(jīng)驗 獲得超12個贊

Python 默認緩沖 stdin、stdout 和 stderr。print()默認情況下寫入stdout,因此您將看到這種緩沖行為。

Python 以緩沖模式打開 stdin、-out 和 -error 流;它將讀取或?qū)懭敫蟮膲K,將數(shù)據(jù)保存在內(nèi)存中,直到達到閾值。

您可以通過傳遞flush=True給強行刷新此緩沖區(qū)printprint如果連續(xù)有多個語句,則只需flush=True在最后一個語句中使用。


查看完整回答
反對 回復(fù) 2023-05-23
  • 1 回答
  • 0 關(guān)注
  • 461 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號