- 23 Mar 2008
- 55
- 1
Python command-line Animasyon yapımı.
Eğlence amaçlı, olur mu acaba diyerek yazdım. Kullanmak için python win32api yi yüklemeniz gerekiyor.
Sağ yön tuşuna bastığınız zaman "-->" u sağa doğru götürüyor, animasyon gibi gözüküyor.
Örnek olarak "-->" yerine ascii de bir adam çizimi koyup yürüme vb. gibi animasyonlar ekleyebilirsiniz.
Sol tuşuna basıldığında "<--" yazan ve boşluğu bir azaltan bir if fonksiyonu ekleyebilirsiniz. Bu sayede sol tuşuna bastığınızda animasyonunuz sol tarafa doğru gider.
edit : konuyu açarken düşünmüştüm, biraz daha karmaşık oldu alta ikinci bir kod olarak ekledim.
İstediğiniz şekilde değiştirmekte kullanmakta özgürsünüz. Biraz daha geliştirip GetAsyncKeyState i kullanarak istediğiniz tuşa fonksiyon verip birşeyleri ekrana yazdırabilirsiniz.
Konuyu açarken programı biraz daha geliştirmeyi düşündüm altta geliştirilmiş hali.
Biraz daha düşünelim, çok uğraşmak isteyen varsa oyun bile yapabilir diye düşünüyorum uah
Okunabilirlik açısından kodu kopyalayıp py ile kaydedip, sağ tık->edit with idle yi seçip,
daha rahat bir şekilde kodu anlayabilirsiniz.
Python 2.7 kullanılarak yazılmıştır.
Resim =
Eğlence amaçlı, olur mu acaba diyerek yazdım. Kullanmak için python win32api yi yüklemeniz gerekiyor.
Sağ yön tuşuna bastığınız zaman "-->" u sağa doğru götürüyor, animasyon gibi gözüküyor.
Örnek olarak "-->" yerine ascii de bir adam çizimi koyup yürüme vb. gibi animasyonlar ekleyebilirsiniz.
Sol tuşuna basıldığında "<--" yazan ve boşluğu bir azaltan bir if fonksiyonu ekleyebilirsiniz. Bu sayede sol tuşuna bastığınızda animasyonunuz sol tarafa doğru gider.
edit : konuyu açarken düşünmüştüm, biraz daha karmaşık oldu alta ikinci bir kod olarak ekledim.
İstediğiniz şekilde değiştirmekte kullanmakta özgürsünüz. Biraz daha geliştirip GetAsyncKeyState i kullanarak istediğiniz tuşa fonksiyon verip birşeyleri ekrana yazdırabilirsiniz.
Kod:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from win32api import GetAsyncKeyState
from time import sleep
from os import system
def animasyon():
bosluk = ""
a = 0
while True:
sleep(0.002) # bu sleepi cpu yu fazla zorlamasın diye ekledim.
if bosluk == " ":
bosluk = ""# boşluk sınırını kendiniz belirleyebilirsiniz bu if fonksiyonunda boşluk sınırını belirledim.
if (GetAsyncKeyState(39)): # VK_RIGHT = 39 , yani sağ yön tuşuna basıldığında...
a = a + 1 # a değerimizi tuşa her basıldığında 1 arttırıyoruz.
if a % 5 == 0: # a değerimiz 5 e bölündüğünde kalan 0 ise
sleep(0.06) # animasyonu biraz yavaşlatıyoruz ki güzel görünsün.
system('cls') # cmd ekranını temizliyoruz.
bosluk += " " # boşluğa bir boşluk ekliyoruz.
print bosluk+"-->" # ekleyeceğimiz boşlukla beraber animasyonuz yazdırıyoruz.
sleep(0.001)
animasyon()
Biraz daha düşünelim, çok uğraşmak isteyen varsa oyun bile yapabilir diye düşünüyorum uah
Okunabilirlik açısından kodu kopyalayıp py ile kaydedip, sağ tık->edit with idle yi seçip,
daha rahat bir şekilde kodu anlayabilirsiniz.
Python 2.7 kullanılarak yazılmıştır.
Kod:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from win32api import GetAsyncKeyState
from time import sleep
from os import system
def animasyon():
bosluk = " "
a = 0
x = 1
while True:
sleep(0.002) # bu sleepi cpu yu fazla zorlamasın diye ekledim.
if bosluk == " ":
bosluk = " "# boşluk sınırını kendiniz belirleyebilirsiniz bu if fonksiyonunda boşluk sınırını belirledim.
if (GetAsyncKeyState(39)): # VK_RIGHT = 39 getasynckeystate kodu, sağ tuş.
a = a + 1 # a değerimizi tuşa her basıldığında 1 arttırıyoruz.
if a % 5 == 0: # a değerimiz 5 e bölündüğünde kalan 0 ise
sleep(0.06) # animasyonu biraz yavaşlatıyoruz ki güzel görünsün.
system('cls') # cmd ekranını temizliyoruz.
bosluk = " " # bosluk değerimizi eski haline döndürdük.
bosluk = bosluk * x # boşluğa bir boşluk ekliyoruz.
x = x + 1 # x çarpanını bir arttırdık.
print bosluk+"-->" # ekleyeceğimiz boşlukla beraber animasyonuz yazdırıyoruz.
sleep(0.001)
if (GetAsyncKeyState(37)): # VK_LEFT = 37 getasynckeystate kodu, sol tuş.
a = a + 1 # a değerimizi tuşa her basıldığında 1 arttırıyoruz.
if a % 5 == 0: # a değerimiz 5 e bölündüğünde kalan 0 ise
sleep(0.06) # animasyonu biraz yavaşlatıyoruz ki güzel görünsün.
system('cls') # cmd ekranını temizliyoruz.
bosluk = " " # bosluk değerimizi eski haline döndürdük
bosluk = bosluk * x # boşluğa bir boşluk ekliyoruz.
x = x - 1 # x çarpanını bir azalttık.
print bosluk+"<--" # ekleyeceğimiz boşlukla beraber animasyonuz yazdırıyoruz.
sleep(0.001)
animasyon()
Resim =
Son düzenleme: