• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Gra - co, jak i dlaczego poprawić?

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
142 wizyt
pytanie zadane 21 września 2021 w Python przez Hajpa Użytkownik (910 p.)

Witam!

Udało mi się napisać takie cudo. Wiem, że nie jest to najlepiej napisane, dlatego podpowiedźcie gdzie popełniłem błędy.

Nie wiedziałem jak napisać kod, w zależności od tego, kto zaczyna pierwszy, dlatego rozpisałem to na dwie funkcje.

Proszę o komentarze.

 

import random
pula = [1,2,3,4,5,6,7,8,9,10]
random.shuffle(pula)
#print(pula)
computerChoice = 0
playerChoice = 0

playerTurn = False
computerTurn = False
endGame = False
x = 0
t = 0

def playerFirst(t):
	for x in range(0, 9):
		t = x +1
		print("runda: " + str(t))
		pShot = input("Twoja kolej...")
		pShot = int(pShot)
		if pShot == computerChoice:
			print("Wygrałeś!")
			return t
# computerTurn
		cShot = (pula[x])
		print("Strzelam " + str(cShot))
		if cShot == playerChoice:
			print("Wygrałem!")
			return t

def computerFirst(x):
	for x in range(0, 9): 
		t = x+1
		print("runda: " + str(t))
		cShot = (pula[x])
		print("Strzelam " + str(cShot))
		if cShot == playerChoice:
			print("Wygrałem!")
			return t
# playerTurn
		pShot = input("Twoja kolej...")
		pShot = int(pShot)
		if pShot == computerChoice:
			print("Wygrałeś!")
			return t


# start gry
print("Zaczynajmy grę!")
print("Wybieram liczbę")
computerChoice = (random.randint(1, 10))
print(computerChoice)
playerChoice = input("Wprowadź swoją liczbę")
playerChoice = int(playerChoice)
print(playerChoice)

start = random.randint(1, 2)
if start == 1:
	print("Ja zaczynam!")
	playerTurn = False
	computerTurn = True
	t = computerFirst(x)
else:
	print("Ty zaczynasz!")
	playerTurn = True
	computerTurn = False
	t = playerFirst(x)


print ("Koniec gry. \n Rozgrywka trwała " + str(t) + " rund.")

 

komentarz 21 września 2021 przez icytower Bywalec (2,170 p.)
nie jestem specem od pythona ale dwie rzeczy moge podpowiedziec. nazewnictwo zmiennych: kazda nazwa zmiennej musi dawac jasna informacje co jest w srodku jednoliterowe nazwy zmienny prawie zawsze sa zle.

w ramach treningowych programow zawsze wszystko pisz po angielsku, przyzwyczajaj sie i trenuj jezyk w ten sposob.

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 1,432 wizyt
pytanie zadane 20 października 2017 w Python przez Dawid89 Obywatel (1,190 p.)
0 głosów
1 odpowiedź 304 wizyt
pytanie zadane 21 lutego 2018 w Nasze projekty przez Piotrek Czech Nowicjusz (160 p.)

93,157 zapytań

142,170 odpowiedzi

321,877 komentarzy

62,486 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 224p. - Marcin Putra
  2. 224p. - nidomika
  3. 223p. - dia-Chann
  4. 221p. - ssynowiec
  5. 217p. - Mikbac
  6. 216p. - CC PL
  7. 215p. - Łukasz Piwowar
  8. 212p. - zmmz89
  9. 210p. - Adrian Wieprzkowicz
  10. 208p. - rafalszastok
  11. 206p. - Michal Drewniak
  12. 204p. - Łukasz Eckert
  13. 202p. - rucin93
  14. 200p. - robwarsz
  15. 198p. - TheLukaszNs
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...