Futbol Menajerlik Oyunu / Python - Turkish Tutorial
Merhaba arkadaşlar Ben Seyda Bozkurt sizlerle pythonla alakalı paylaşacağım üçüncü yazım. ilk iki projeden biraz bahsedeyim Python'da veritabanına veri giriş çıkış işlemi yaptık ve Pythonda Sezar şifreleme örneği ile kendi şifreleme tekniğimizi yapmış olduk bunda ise bir futbol menajerlik oyunu sezon sonu değeri projesi yapacaz kısaca bahsetmek gerekirse oyuncularımız olacak o oyuncalarımıza ait gol sayısı, pas sayıları,şut sayıları,koştuğu km mesafesi gibi özellikler olacak ve bu özelliklere göre oyuncumuzun gücünü bulacaz. bu projeyi değiştirerek takip sistemide yapabilirsiniz yani günlük ürün girdi çıktısı stok sayıyınızı öğrene bilirsiniz kısacası tabi bu sizin hayal gücünüze ve yeteneğinize kalmış lafı fazla uzatmadan örneğimize geçelim.
öncelikle bir sözlük oluşturup oyuncular sözlük içerisine oyuncumuzun adını ve istatiklerini yazalım.
oyuncular={'ahmet': [2,2,3,6,5,6,23], 'mehmet': [3,4,3,4,5,6,33], 'mert': [5,3,3,1,5,2,23]}
#1. Gol Sayısı - 5 katı
#2. İsabetli şut sayısı - 1.5 katı
#3. İsabetsiz şut sayısı
#4. Başarılı Pas - 0.75 katı
#5. Başarısız Pas - 0.5 katı
#6. Top Çalma - 2 katı
#7. Ortalama koşu
evet arkadaşlar yukarıda gördüğünüz gibi değerlerin ne anlama geldiğini ve ve o futbolcuya etki oranını belirttim. bu koşullarla oyuncumuzun gücünü bulabilecez. daha sonra ise her zaman ki gibi hem bizim için hemde projemizin hızı için bir fonksiyon belirttim kodlarımızı bunun için içine yazıcaz. fonksiyonumuzun adı "istatik_hesapla" olsun.
def istatistik_hesapla(oyuncular):
istatistik_sonuclari={}
evet bir fonksiyon tanımladık ve "istatik_sonuclari" diye yeni bir söz öbeği açtık çünkü güçleri bu söz öbeğinin içine yazacaz. şimdi sırada ise for döngüsü ile oyuncuların adını ve değerlerini bir değişkene atayalım daha sonra ise yukarıda da belirtmiş olduğumuz değerler ile çarpalım
for oyuncu,istatistik in oyuncular.items():
attigi_gol=istatistik[0]*5
isabetli_sut=istatistik[1]*1.5
isabetsiz_sut=istatistik[2]
basarili_pas=istatistik[3]*.75
basarisiz_pas=istatistik[4]*.5
top_calma=istatistik[5]*2
ortalama_kosu=istatistik[6]
toplam_istatistik=attigi_gol+isabetli_sut-isabetsiz_sut+basarili_pas-basarisiz_pas+top_calma+ortalama_kosu
istatistik_sonuclari[oyuncu]=toplam_istatistik
return istatistik_sonuclari
evet arkadaşlar for ile oyuncu ismini ve değerlerini değişkenlere atadık. kodu biraz incelerseniz liste içerisinden çağırıyor çünkü en başa dönerseniz sözlükte biz oyuncuların değerini bir liste içerisinde belirttik peki bu items ne sözlükte bulunan öbek içerisindeki nesneler yani "isim"i ayrı bir nesne "değerleri" ayrı bir nesne olarak tanımlıyor ve bu bizim işimize çok yarıyor. çünkü diğer yöntemle tamamen amelelik olacaktı bizimde amacımız en az kodla en çok işi yapmak :) ben sizlere bu kodları uzun uzun yazmamın sebebi daha açıklayıcı olmasını istedim çünkü kodumuzu python hakkında kim okursa okusun az çok bilgisi olsa bile kodumuzun şemasını ve yapısını anlamalı buda bizlere kaliteli ve temiz yazılım projeleri üretmemizi sağlar :)
en sonra ise kodumuzu fonksiyonumuzu çalıştırmak için ve yazdırmak içinse bu kodları eklemeyi unutmuyoruz.
print(istatistik_hesapla(oyuncular))
işte bu kadar arkadaşlar artık sizde bir menajerlik oyunu yapıp oyuncularınızın değerini ölçe bilirsiniz ayrıca bu isimleri ve değerleri değiştirerek stok bilginizi satış kar marjınız gibi bir çok şeyi öğrene bilirsiniz :) ayrıca bu yöntemle bir öğrencinin ders notunun kısa sınav vize final gibi notlarıyla ortalamasının kaç olduğunuda bulabilirsiniz. umarım bu projemizde de sizlere bir şey katabilmişimdir lütfen takıldığınız bir noktada yorum yapmayı ve yeni bir öneri sunmayı unutmayın. Teşekkür ederim :)
kodların tamamı :
oyuncular={'ahmet': [2,2,3,6,5,6,23], 'mehmet': [3,4,3,4,5,6,33], 'mert': [5,3,3,1,5,2,23]}
def istatistik_hesapla(oyuncular):
istatistik_sonuclari={}
for oyuncu,istatistik in oyuncular.items():
attigi_gol=istatistik[0]*5
isabetli_sut=istatistik[1]*1.5
isabetsiz_sut=istatistik[2]
basarili_pas=istatistik[3]*.75
basarisiz_pas=istatistik[4]*.5
top_calma=istatistik[5]*2
ortalama_kosu=istatistik[6]
toplam_istatistik=attigi_gol+isabetli_sut-isabetsiz_sut+basarili_pas-basarisiz_pas+top_calma+ortalama_kosu
istatistik_sonuclari[oyuncu]=toplam_istatistik
return istatistik_sonuclari
print(istatistik_hesapla(oyuncular))
Proje Çıktısı:
Github linki :
https://github.com/kansiper/FutbolMenajerlikOyunuPython.git
Posted on Utopian.io - Rewarding Open Source Contributors
Your contribution cannot be approved because it does not follow the Utopian Rules.
This is not a proper tutorial post. You made a simple code but you do not really teach anything about that. The post has been rejected for the poor quality.
Think about how you could do the proper tutorial or even a series. You use Python so you should link it with Python repository and use your code samples.
You can contact us on Discord.
[utopian-moderator]