常識かもしれませんが、文字列で簡易的にアニメーションする方法を書いてみます。
こんな感じのアニメーションが作れます。
Python 3.6.1で作っていますが、原理的に言語が違っても作成できます。
キャリッジリターンが認識される環境ならば思い通りに表示されると思います。
仕組みは、単純です。
- printの改行を抑制する
- 文字列を表示させたらキャリッジリターンを表示させる
の2つだけです。
後は、アニメーションらしく表示間隔を調整してやらばそれらしく見えます。
一番単純なものは以下のようなものでしょうか。
python
import time
interval = 0.50
print("1 \r", end="")
time.sleep(interval)
print(" 2 \r", end="")
time.sleep(interval)
print(" 3 \r", end="")
time.sleep(interval)
print(" 4 \r", end="")
time.sleep(interval)
print(" 5 \r", end="")
time.sleep(interval)
print(" \r", end="")
time.sleep(interval)
もう少しプログラムらしくすると、以下のような感じになります。
python
import time
def animation(sts, times=3, interval=0.25):
for n in range(times):
for st in sts:
print(st, end="")
time.sleep(interval)
print("\r", end="")
print()
sts = [
" (・∀・) ",
" (・∀・)ニヤ ",
" (・∀・)ニヤニヤ ",
" (・∀・)ヒャ ",
" (・∀・)ヒャヒャ ",
" (・∀・)プゲラ ",
]
times = 3
interval = 0.25
animation(sts, times, interval)