Hogyan távolíthatom el a vesszőn kívül az írásjeleket egy stringből Pythonban?
Pythonban nincsenek string műveletek?
Remove/Replace/Akármi?
>>> s=' +-/()' # Egy szóköz elég
>>> old = '+241 (98)214-2421/23'
>>> for x in s:
_ old = old.replace(x, '')
_ id(old)
57570264
57570480
57570264
57570480
36736752
57590576
>>> old
'24198214242123'
Az aláhúzásjellel kezdődő sorokat kell aláhúzás helyett behúzni, csak azt itt nem lehet.
Az id(old) arra való, hogy lássad, hogy minden lépésben egy új string keletkezik, mivel a Pythonban a string megváltoztathatatlan objektum, tehát ha megváltoztatod, létrejön egy új a memóriában, ezért érdemes csínján bánni vele, például betenni az egészet egy függvénybe, hogy külön névtere legyen. Vannak ennél profibb megoldások is, de aki ilyen kérdést tesz fel, annak ezek még koraiak.
Persze ha nem interaktív shellben csinálod, akkor print() függvények is kellenek, nem elég a változónév.
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!