Ez miért nem fordul le? Python
# Szoveg felcserelo program
txtOne,j = "Burgonya",0
txtTwo,i = txtOne,len(txtOne)
while( i > 0):
txtTwo[j] = txtOne[i]
j = j + 1
i = i - 1
print "txtOne:",txtOne
print "txtTwo:",txtTwo
A fordító milyen hibaüzenetet ad? Mert ha nem fordul le, akkor kapsz valami hibaüzenetet a hiba okáról. Na annak a hibaüzenetnek kellene utána nézni...
Első ránézésre, bár nem szoktam pythonban programozni, azt mondanám, hogy túlindexeled a tömböt. Gondolom itt is, mint oly sok nyelvben, a tömbök/stringek 0-tól indexelődnek. A len függvény megadja string hosszát, de ez egyel nagyobb érték lesz mint a tömb/string utolsó elemének az indexe, hiszen nullától indexelődik, ami annyit tesz, hogy az első elem indexe a 0.
Én nem tudom mi baja van nem használok fejlesztő eszközt.
Vagyis IDE-t.
Nem történik túl indexelés szerintem.A len vissza adja a karakterlánc hosszát.
Az i ben 8 érték lesz így.
Itt minden jó pedig.
Semmi hibaüzenet nincs.
Nem jelzi a hibaüzeneteket.
Írjátok már meg,hogy mi a baj.
Pár sor az egész nem kell ide hibaüzenet.
Javítottam a forráskódon:
De még mindig van egy hiba:
Abba 4 sorba van ez a hibaüzenet:
type error:'str' object does not support item assignment
Bemész szépen a Windows parancssorba és onnan futtatod a kódot, akkor látni fogod a hibaüzenetet ugyanis, ha nem jó akkor KELL lennie.
Amúgy pedig a szöveget akarod megfordítani?
Az ennyi lenne Pythonban:
"Burgonya"[::-1]
Pythonban nem lehet string-et betűnként manipulálni.
Próbáld a txtTwo-t list-é alakítani, majd a végén vissza.
list-é alakítani :O
Nem értem ezt a mondatot.
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!