Python3 Dersleri 37 - NTP - Düşman Sınıfını Geliştirmek 1

preview_player
Показать описание
Kullandığım 2 adet Sosyal Medya Hesabının Linkleri :

Udemy üzerindeki kurslarımdan herhangi bir tanesine aşağıdaki linke tıklayarak en düşük fiyata kaydolabilirsiniz.
Bu videoda önceki derslerde oluşturduğumuz düşman sınıfını geliştirdik.
Linke tıklayarak Facebook Sayfamızı beğenebilirsiniz.
Takip Edin
Twitter Hesabı :
Рекомендации по теме
Комментарии
Автор

import random
class Düşman:
def __init__(self, Adı="piyon", Canı=25, MermiSayısı = 5, Hasarı=5):
self.Adı = Adı
self.Canı = Canı
self.Hasarı = Hasarı
print("KAYDEDİLDİ")


def saldır(self):
print(self.Adı, " SALDIRIYOR")
harcanan_mermi = random.randrange(0, 10)
print(str(harcanan_mermi), " KADAR MERMİ HARCANDI")
self.MermiSayısı -= harcanan_mermi
return (harcanan_mermi, self.Hasarı)

def saldırıyaUğra(self, harcanan_mermisayısı, saldırI_gücü):
print("vuruldum")
self.Canı

def mermi_bittimi(self):
if(self.MermiSayısı <=0):
print(self.Adı, " Konuşuyor: Mermim bitti ben çıkıyorum...")
return True
return False

def hayattamı(self):
if(self.Canı <=0):
print("ÖLÜYORUMMMM")

def print(self):
print("BASTIRILIYOR...")
print("isim", self.Adı, "Canı", self.Canı, "MermiSayısı", self.MermiSayısı, "Hasarı", self.Hasarı)


duşmanlar = []

i =(0)
while(i<10):
rastgelecan = random.randrange(100, 200)
rasgelesaldırıgücü =random.randrange(10, 20)
rastgelemermi =random.randrange(20, 30)
yenidüşman = ("duşman"+str(i+1), rastgelecan, rastgelemermi, rasgelesaldırıgücü)
duşmanlar.append(yenidüşman)
i+=1

for Düşman in duşmanlar:
print(Düşman)

anlozgun
Автор

37. Verilmiş ədədə qədər olan Fibonaççi ədədlərini çap eden funksiya yazın.
Fibonaççi ədədləri: birinici və ikinci həddi 1-ə. 3-cü həddən başlayaraq hər sonra gələn hədd özündən əvvəlki iki həddin cəminə bərabər olan ədədlər ardıcıllığıdır. 1, 1, 2, 3, 5, 8, 13, 21, 34, 55,


MISAL 37


def funk(n):
a = 1
b = 1
c = 1
list = [1, 1]
while c < n:
c = a + b
a = b
b = c
if c < n:
list.append(b)
for i in list:
print(i, end=" ")
n = int(input("Ededi daxi edin: "))
funk(n)

muradquliyev
Автор

Allah sonunu hayır etsin bu düşmanların

thepraktik
Автор

Bu kodlari yazmadan önce algoritmasını yazarken nasıl düşündünüz? Yoksa algoritma yazmadan pratiğiniz olduğu için yaza yaza mı geliştirdiniz? Bu süreci çok merak ediyorum. iyi çalışmalar.

mtayfur
Автор

import random
class Oyun:


def __init__(self, isim = "Baş Komutan", can = 100, mermi = 100):

self.isim = isim
self.can = can
self.mermi = mermi



def atak(self):
print(self.isim + " Atatürk konuşuyor:Ordular ilk hedefiniz akdeniz ileri!!! " )
harcanan_mermi = random.randrange(0, 50)
print(str(harcanan_mermi)+ " kadar mermi harcandı.")
mermi = self.mermi - harcanan_mermi
print(mermi)
print("Merminiz kaldı.")
def savunma(self):
print(self.isim +" Konuşuyor: Baskın yiyiyoruz, askerler kaçmak Türk'e yakışmaz, direnin!!!")
print(self.isim + " Atatürk konuşuyor:Geldikleri gibi gidecekler...")
isabetli_mermi = random.randrange(0, 100)
can = self.can - isabetli_mermi
print(can)
print("Canınız kaldı.")


def şarjör_durumu(self):
if self.mermi ==0:
print("Şarjörüm tükendi, takviye istiyorum, cepenin kuzey batısındayım...")
else:
print("İlerliyorum...")
def iyi_durum_raporu(self):
print(self.isim + " Konuşuyor, kuzey cephesinde durumlar nasıl?")
print("Düşman üssüne doğru ilerliyoruz, asayiş berkemal komutanım...")
print(self.isim + " Konuşuyor:Bravo askerler temizleyin onları...")
def kötü_durum_raporu(self):
print(self.isim + " Konuşuyor, orada durumlar nasıl?")
print("Güvende değiliz komutanım, doğu cephesine yardım istiyoruz...")
print(self.isim + " Konuşuyor:yardım yolluyorum, kıpırdamayın!!!")
def hayatta_mı(self):
if self.can <=0:
print("Öldü.")
else:
print("Ben iyiyim, ilerliyorum.")
def esir_askerlerimiz(self):
print("Düşman konuşuyor:Komutan, askerlerin elimizde, ya yenilgiyi kabul edersen ya da ölürler. ")
def başkomutanın_cevabı(self):
print("Komutan konuşuyor:Türk askeri yiğittir, cesurdur.")
print("Onların kılına zarar gelsin, sana yaşamak istemeyeceğin kadar acı çektiririm.")
def savaşın_sonu(self):

Adet1= int(input("Asker sayınızı giriniz:"))
Adet2= int(input("Asker sayılarını giriniz:"))
if Adet1 > Adet2:
print("Türkler Kazandı!!!!")
elif Adet1==Adet2:
print("Savaş berabere bitmiştir.")
else:
print("Düşman kazandı.")
def giriş(self):
print("İsim:", self.isim, "Can:", self.can, "Mermi:", self.mermi)


Start = Oyun()

Start.savunma()
Start.kötü_durum_raporu()
Start.iyi_durum_raporu()
Start.hayatta_mı()
Start.esir_askerlerimiz()
Start.başkomutanın_cevabı()
Start.atak()
Start.şarjör_durumu()
Start.savaşın_sonu()

Anladığım kadarıyla böyle bir şey yaptım.

enesprtc
Автор

düşmanlar dizisinin içerisinde düşman döndü, class ı böyle döngüde döndürmenin amacı nedir?

denizdengeliyorum
Автор

hocam keşke kodları açıklamaya atsanız daha iyi olur bizim içn.

arya
Автор

Derin öğrenme nasıl yapılabilir. Anlatabilir misiniz yada bir örnek yaparmısınız

atukenmez
Автор

sizin yaptığınız kodları kopyala yapıştır yaparak kullanıyorum yine de şöyle bir sıkıntı çıkıyor satırı değişiyor ama sıkıntı hep aynı yardımcı olabilir misiniz?
SyntaxError: Non-UTF-8 code starting with '\xfd' in file on line 13, but no encoding declared;

velibozkaya
Автор

random.randrange(0, 10)==random.randint(0, 10)
İkiside aynı şey değil mi?

aliosmankepir
Автор

abi en sonda dusman.print nereden cikti 2 saattir ugrasiyorum yapamiyor bir el atsan?

tor
Автор

Bütün kodları eksiksiz yazdığımı düşünüyorum fakat şöyle bir hata aldım yardımcı olur musunuz


"D:\MASAÜSTÜ\program çalışma ve kısayollar\python pycharm çalışmaları\Yeni klasör (2)\venv\Scripts\python.exe" "D:/MASAÜSTÜ/program çalışma ve kısayollar/python pycharm çalışmaları/Yeni klasör (2)/deneme27.py"
Traceback (most recent call last):
File "D:/MASAÜSTÜ/program çalışma ve kısayollar/python pycharm çalışmaları/Yeni klasör (2)/deneme27.py", line 49, in <module>
dusman.print()
AttributeError: 'tuple' object has no attribute 'print'

Process finished with exit code 1

kursat
Автор

Random'u tanımıyor. Tek hata olarak unresolved reference 'random' . Napmalıyimm

selinaysu
Автор

Saldırı fonksiyonumuzdaki değerleri neden returnluyoruz bu kendimize ateş etmek olmaz mı?

ibrahimkoz
Автор

sorun ne
import random
class Dusman:
def __init__(self, isim="Dusman", qalancan=500, saldiri_gucu=10, mermi_sayi=5):
self.isim=isim
self.qalancan=qalancan

self.mermi_sayi=mermi_sayi

def saldir(self):

harcananmermi=random.randrange(1, 10)


return (harcananmermi, self.saldiri_gucu)
def saldiriyaugra(self, harcananmermi, saldiri_gucu):
print("vuruldum")
self.qalancan-=harcananmermi * saldiri_gucu
def merm_bitdimi(self):
if (self.mermi_sayi<=0):
print(self.isim+"mermiyok")
return True
return False
def hattdami(self):
if (self.qalancan<=0):
print("oluyorum")



def print(self):

print("isim", self.isim, "qalancan", self.qalancan, "saldirigucu", self.saldiri_gucu, "mermisayisi", self.mermi_sayi)


dusmanlar=[]
i=0
while (i<10):
rastgelecan=random.randrange(100, 200)
rastgelesaldirgucu=random.randrange(10, 20)
rastgelemermi=random.randrange(20, 30)
yenidusman=("Dusman"+str(i+1), rastgelecan, rastgelesaldirgucu, rastgelemermi)
dusmanlar.append(yenidusman)
i+=1

for dusman in dusmanlar:
dusman.print()

komputerucun
Автор

"self" i kendi atamiyor ise ne yapmaliyiz?

orhanelbek
Автор

biri bana yardımcı olabilrmi
bu sekilde bir çıktı aldım:
('Isim:', 'dusman1', 'Kalan can:', 142, 'Saldiri g\xc3\xbcc\xc3\xbc', 10, 'Mermi sayisi', 25)

('Isim:', 'dusman2', 'Kalan can:', 100, 'Saldiri g\xc3\xbcc\xc3\xbc', 19, 'Mermi sayisi', 22)

('Isim:', 'dusman3', 'Kalan can:', 113, 'Saldiri g\xc3\xbcc\xc3\xbc', 18, 'Mermi sayisi', 28)

('Isim:', 'dusman4', 'Kalan can:', 136, 'Saldiri g\xc3\xbcc\xc3\xbc', 14, 'Mermi sayisi', 23)

('Isim:', 'dusman5', 'Kalan can:', 140, 'Saldiri g\xc3\xbcc\xc3\xbc', 12, 'Mermi sayisi', 28)

('Isim:', 'dusman6', 'Kalan can:', 157, 'Saldiri g\xc3\xbcc\xc3\xbc', 10, 'Mermi sayisi', 20)

('Isim:', 'dusman7', 'Kalan can:', 197, 'Saldiri g\xc3\xbcc\xc3\xbc', 10, 'Mermi sayisi', 29)

('Isim:', 'dusman8', 'Kalan can:', 193, 'Saldiri g\xc3\xbcc\xc3\xbc', 19, 'Mermi sayisi', 27)

('Isim:', 'dusman9', 'Kalan can:', 186, 'Saldiri g\xc3\xbcc\xc3\xbc', 11, 'Mermi sayisi', 27)

('Isim:', 'dusman10', 'Kalan can:', 155, 'Saldiri g\xc3\xbcc\xc3\xbc', 18, 'Mermi sayisi', 23)

pearan
Автор

mermi_bitti_mi fonksiyonundaki return true ve return false satırlarını yazmamızdaki amaç nedir? return deyimini True ve False ile kullandığımızda nasıl bir sonuç elde ediyoruz? Hiçbir yerde bulamadım yardımcı olur musunuz?

GcNCyLn
Автор

Merhabalar, kodum aşağıda yardımcı olabilecke var mı?
Sınıfını Geliştirme 1(nesne).py"
Traceback (most recent call last):
File Sınıfını Geliştirme 1(nesne).py", line 38, in <module>
asker.print()
AttributeError: 'tuple' object has no attribute 'print'

Process finished with exit code 1
BU HATAYI ALIYORUM
import random
class Asker:
def __init__(self, isim="Asker", kalan_can=2000, saldırı_gücü=200, mermi_sayısı=40):
self.isim = isim
self.kalan_can = kalan_can
self.saldırı_gücü = saldırı_gücü
self.mermi_sayısı = mermi_sayısı
def saldır(self):
print(self.isim + "Saldırıyor.")
harcanan_mermi = random.randrange(0, 10)
print(str(harcanan_mermi + " kadar harcandı"))
self.mermi_sayısı -= harcanan_mermi
return (harcanan_mermi, self.saldırı_gücü)
def saldırıya_uğra(self, harcanan_mermi, saldırı_gücü):
print("Vuruldum")
self.kalan_can -= (harcanan_mermi * saldırı_gücü)
def mermi_bitti_mi (self):
if (self.mermi_sayısı <= 0):
print(self.isim + "Mermim bitti. Oyundan çıkıyorum")
return True
return False
def hayatta_mı(self):
if(self.kalan_can <= 0):
print("Kader böyle imiş ey garib ana, kanım feda olsun güzel vatana!")
def print(self):
print("Özellikleri:")
print("İsim:", self.isim, ", ", "Kalan Canı:", self.kalan_can, ", ", "Saldırı gücü:", self.saldırı_gücü, ", ", "Mermi sayısı:", self.mermi_sayısı)
askerler = []
i=0
while (i < 10):
rasgelecan = random.randrange(100, 200)
rasgelesaldırıgücü = random.randrange(10, 20)
rasgelemermisayısı = random.randrange(20, 30)
yeniasker = ("Asker" + str(i+1), rasgelecan, rasgelesaldırıgücü, rasgelemermisayısı)
askerler.append(yeniasker)
i+=1
for asker in askerler:
asker.print()

okatacu