Kezdőoldal » Számítástechnika » Programozás » Python 3 Kezdo vagyok a...

Amigdala kérdése:

Python 3 Kezdo vagyok a programozasban es nagyon elakadtam egy resznel. Orommel vennek epito jellegu segitseget. Ez a pelda jobban le tudja irni a dolgot, mint en. A gond az utolso sornal jelentkezik. Esetleg valami spec. Builtin-re lenne szuksegem?

Figyelt kérdés

import time



class Player:

def __init__(self):

self.location = 'a2'



class Zonemap:

def __init__(self, name, opt, descr, solved):

self.name = name

self.opt = opt

self.descr = descr

self.solved = solved



my_player = Player()

a1 = Zonemap('Entrance', ('a2', '', '', '', '', ''), 'Description of the Entrance', False)

a2 = Zonemap('Stairs', ('a3', 'a1', '', '', '', ''), 'Description of the Stairs', False)

a3 = Zonemap('Corridor', ('a4', 'a2', 'a7', '', '', ''), 'Corridor descr.', False)

flat1 = (a1, a2, a3)


print(f"My player's location is: {my_player.location}")

print(f'This would be the destination when I go north: {flat1[1].opt[0]}')

print(f"So I tried to work myself up to the point: {flat1[flat1.index(a2)].opt[0]}")

print(f"But I get this error message at the next step:\nValueError: tuple.index(x): x not in tuple\nAnd I have no idea "

f"why. The value of my_player.location is still a2.")

time.sleep(5)

print(flat1[flat1.index(my_player.location)].opt[0])



2019. ápr. 15. 11:18
1 2
 11/13 A kérdező kommentje:

Igy sikerult megoldanom:


[link]


Az a2 erteket akartam a mindig aktualis my_player.location-re lecserelni.

Ket extra sorral tudtam csak megoldani, de biztos vagyok benne, hogy van ettol elegansabb megoldas is, csak meg az en tudasom keves hozza. De mar igy is orulok, hogy osszejott. Most mar be tudom jarni az egesz terkepet, az osszes egtaj megfeleloen mukodik. A kovetkezo lepes, hogy ha a Zonemap .opt tuple eleme '', akkor kiirja, hogy: "Nem mehetsz arra.", de az mar gyerekjatek lesz ez utan.

2019. ápr. 15. 23:31
 12/13 A kérdező kommentje:

Amugy tokeletesen ertelmeztel mindent. Tudtam, hogy egy par soros progi jobban le tudja irni a problemamat, mint en szavakkal.

Persze, nem kiiratni akarom, csak egyszerubb volt igy a pelda, mert a progi maga mar 300 sor folott jar, raadasul mappakra es fajlokra felosztva es igy is mindig belegabalyodok az import, meg global cuccokba. Kicsit lehet, hogy nagy faba vagtam a fejszemet kezdo letemre, de baromira elvezem.


a1 = Zonemap('Entrance', ('a2', '', '', '', '', ''), 'Description of the Entrance', False)


Ebbol ('a2', '', '', '', '', '') az eszak, del, kelet, nyugat, fel, le opcioi. Itt tehat, a1 rol csak eszakra lehet majd menni, azaz a2-re.


Koszi a brainstorming-ot.

2019. ápr. 15. 23:59
 13/13 tabaki ***** válasza:
Örülök, hogy hasznos volt.
2019. ápr. 16. 00:11
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!