Pythonプリントプリントタイマー機能

[ 参照リンク:Python | print()の終了パラメーター](https://www.imangodoc.com/166.html)

  1. 秒読み

printのパラメータを詳しく見てみましょう:print(value、sep = ''、end = '\ n'、file = sys.stdout、flush = False)

値は印刷する文字列であり、sepは値の間の間隔です(実際に間にスペースがあることを確認するために( "Hello"、 "Python")を印刷できます)

endは、印刷が完了した後に印刷されるものです。printのデフォルトでは、最後に\ n、つまり新しい行が印刷されます(printを折り返さないようにし、endパラメーターを ''に変更するだけです)。

file = sys.stdoutはどこに出力されますか? sys.stdoutは、標準の出力デバイスであるシステムのコンソールです。

Flush = Falseは、printがバッファーを開かないことを意味します。バッファーを開くには、flushをTrueに設定するだけで済みます。

カウントダウンプログラム、ここでは5秒のカウントダウン

import time

print( "カウントダウンプログラム")

for x in range(5,-1,-1):

mystr = "カウントダウン" + str(x)+ "秒"

print(mystr,end = "")

print("\b" * (len(mystr)*2),end = "",flush=True)

time.sleep(1)

説明する:

Range(5、-1、-1)は、次のことを意味します。rangeを使用して、5から始まり、-1の前で終わるリストを生成します。範囲の使用法は範囲(開始、終了、ステップサイズ)です。これは、大きいものから小さいものに移動するためです。したがって、-1を使用して、ステップが-1であることを示します。つまり、毎回-1を意味し、-2の場合は、タイムズ-2

str(x)はx変数を文字列に変換します

print(mystr、end = "")文字列を出力した後は、折り返しません。つまり、end = ""

最も重要なステートメント:print( "\ b" (len(mystr) 2)、end = ""、flush = True)

"\ B" (len(mystr)2)は、エスケープ文字 '\ b'を出力してから、len(mystr)を2回出力することを意味します。 lenは文字列の長さを取得します、なぜ2ですか?ご存知のとおり、使用している文字列は中国語で、1つの中国語文字= 2つの英語文字(プレースホルダー)なので、文字列が英語の場合、2つは使用できませんが、中国語の文字は異なります。特定の友達は削除を試みることができます 2

flush = Trueは、バッファーを開くことです

\ bエスケープ文字にはバックスペース機能があります。これは、ファイルを編集するときにBackSpaceキーを押して、カーソル位置から文字を前方に削除するのと同じです。

time.sleep(1)は、プログラムを1秒間一時停止します

このように、各印刷後に\ bを使用すると、行内のすべての文字をクリアできます。そのため、文字列の長さを取得する必要があります。また、PythonのIDLEは\ b文字を認識できないため、正しい結果はコンソールでのみ確認できます。

  1. 進捗率を示すプログラム

import time

print( "表示パーセンテージ")

for x in range(101):

mystr = "パーセント" + str(x)+ "%"

print(mystr,end = "")

print("\b" * (len(mystr)*2),end = "",flush=True)

time.sleep(0.5)

  1. 場合

import time

input( "" Time Manager "へようこそ!続行するにはEnterキーを押してください。")

while True:

task_name = input( 'タスク名を入力してください:')

task_time = int(input( 'このタスクに少なくとも何分集中できると思いますか?N分を入力してください'))

input( 'このタスク情報:\ n完了したいタスク:%s \ n少なくとも集中する必要があります:%d分\ nタイミングを開始するにはEnterキーを押します:'%(task_name、task_time))

start = time.time()#開始タイミング

start_time = time.strftime( '%Y-%m-%d%H:%M:%S'、time.localtime(time.time()))#フォーマット日付

#実際のコード:60分を秒に掛け、-1を使用してカウントダウンします。

# for t in range(task_time*60,0,-1):

for t in range(task_time,0,-1):

info = 'タスクに集中し、集中し続けてください' + str(t)+ '秒! '

print(info,end="")

print("\b"*(len(info)*2),end="",flush=True)

time.sleep(1)

print( 'あなたは%d分に集中しました、素晴らしい〜もっと頑張ってタスクを完了してください!'%task_time)#カウントダウンの後、後続のコードを実行し続けます。

Recommended Posts

Pythonプリントプリントタイマー機能
Pythonがタイマー機能を実装する方法
Python enumerate()関数
Python関数バッファー
Pythonカスタム関数の基本
Pythonの結合関数
pythonでステートメントを印刷する
Python組み込み関数-compile()
Python関数の基礎学習
Pythonデータ分析-関数の適用
Python3組み込み関数table.md
Pythonは関数メソッドを定義します
Pythonの上位関数の使用法の概要!
Pythonはオンライン翻訳機能を実現します
Pythonトルネードアップロードファイル機能
Pythonマジック関数eval()学習
PythonがFTP機能を実装する方法
Pythonは画像スティッチング機能を実装しています
Pythonの上位関数の使用法の概要!
Pythontelnetログイン関数の実装コード
Pythonがメール機能を実装する方法
Pythonが関数のオーバーロードをサポートしないのはなぜですか?
pythonに関数のオーバーロードはありますか
Pythonの3日目の1行関数の学習
PythonATM関数の実装コード例
Pythonは画像認識カー機能を実現
Pythonはftpファイル転送機能を実装しています
Pythonはudp送信画像機能を実現します
pythonでid関数を実行する方法
pythonのid関数は何ですか
Pythonの匿名関数とは何ですか
python3はマスク描画の機能を実現します
pythonの関数本体は何ですか
pythonにヘルパー関数はありますか