Stringek és műveleteik
Ahogy eddig láthattuk, a legtöbb programban amiben fájlokkal, inputokkal, outputokkal foglalkozunk, szükségünk van stringekre, így érdemes lenne megismerkedni, hogy miről van szó valójában, és milyen műveleteket végezhetünk rajtuk.
len(object) (length)
len() függvényt a legtöbb objektumon tudjuk használni, és visszaadja az adott objektum hosszát. Stringek esetében azt, hogy hány karakterből áll.
s = "Python"
print(len(s))
6[] (indexelés)
Stringeken értelmezett természetes művelet, hogy szeretnénk kiválasztani egy bizonyos elemét. A legtöbb programozási nyelvben a stringek lista-szerű adatszerkezetek, így adott elem eléréséhez használhatjuk a [] operátort.
s = "Python"+------+------+------+------+------+------+
| s[0] | s[1] | s[2] | s[3] | s[4] | s[5] |
+------+------+------+------+------+------+
| P | y | t | h | o | n |
+------+------+------+------+------+------+s = "Python"
print(s[0])
print(s[2])P
tFigyeljük meg, hogy s[len(s)] hibás!
s = "Python"
print(s[len(s)])IndexError: string index out of ranges = "Python"
print(len(s))
print(s[0])
print(s[1])
print(s[2])
print(s[3])
print(s[4])
print(s[5])6
P
y
t
h
o
nStringek összefűzése
+ jel segítségével összefűzhetünk stringeket, és eredményképpen egy új string példányt kapunk.
a = "Hello "
b = "World!"
c = a + b
print(c)
Hello World!Slicing
Stringeket fel tudunk szeletelni, és kiválasztani bizonyos szeleteket.
Szintaktika: [start:stop:step]
start - legelső kiválasztott elem indexe
stop - utolsó kiválasztott elem sorszáma, exkluzívan
step - hány lépésenként válasszuk ki az elemeket
s = "Ceteris Paribus"
print(s[3:12:2])
+------+------+------+------+-------+
| s[3] | s[5] | s[7] | s[9] | s[11] |
+------+------+------+------+-------+
| e | i | | a | i |
+------+------+------+------+-------+str.upper()
A stringben megtalálható karaktereket nagybetűssé alakítja.
s = "Ceteris Paribus"
print(s.upper())
CETERIS PARIBUSstr.lower()
s = "Ceteris Paribus"
print(s.lower())
ceteris paribusstr.strip()
Ez egy nagyon hasznos függvény, ha stringeket szeretnénk "tisztítani" például adatbeolvasás után.
s = " Ceteris Paribus "
print(s.strip())
Ceteris Paribusstr.Replace(str,str)
Karakterek kicserélése egy adott stringben. Paraméterek, hogy miket cserélünk ki mire.
s = "Cotoris Paribus"
print(s.replace("o", "e"))
Ceteris ParbiusA replace() gyakorlatban nagyon hasznos lehet, ha például csv fájlokban szeretnék az összes elválasztókaraktert kicserélni.
Escape Karakterek
\"
ha a stringben " karaktert szeretnék használni, akkor a \" formát érdemes használni, különben szintaktikai hibát kapunk
\\
hasonlóan a "-hez
\n
új sor
\t
tabulátor
Ezeket a karaktereket akkor lehet használni általában, ha olyan karaktereket akarnánk megjeleníteni amik valamilyen problémát okoznának, vagy amúgy láthatatlan karakterek.
s_1 = '"Hello?"'
s_2 = "1\\2"
s_3 = "új \n sor"
s_4 = "tab\ttab"
print(s_1)
print(s_2)
print(s_3)
print(s_4)
"Hello?"
1\2
új
sor
tab tabIde kattintva olvashattok további string műveletekről.
help()
Ha bármelyik függvényről gyors információt szeretnétek szerezni, akkor a help() függvényt tudjátok használni.
help(str.join)
Last updated