2016-12-20 10 views
0

"Done"を書式的に印刷する方法を理解しようとしています。窓の終わりにPythonはウィンドウの最後に印刷します

私はflushを使用して動的に印刷しています。コードスニペットは次のようになります。

print("Opening the file "), 
sys.stdout.flush() 
for i in range(3): 
    print("."), 
    sys.stdout.flush() 
print("\tDone.") 

「完了」とします。ウィンドウの大きさにかかわらず、行の最後にすべて印刷されます。

答えて

0

これは、コンソールウィンドウの長さを見つけ、末尾にDone.のスペース文字列を作成します。

import os 
rows, columns = os.popen('stty size', 'r').read().split() 
spaces = ''.join([' '] * (int(columns) - 5)) 
done = spaces + 'Done.' 
print(done) 
+0

私はそれが完璧ではなかった理由を考えました。 セクション内の (int(colums) - 5)) 初期文字列またはドットのサイズを考慮していません。 だから (int(colums) - 5 - 17 - 3) – Shaw

関連する問題