Pythonban, egy stringben melyik a helyettesítő karakter?
Mert Accessben tudom,hogy a*, ami több karaktert is helyettesít, így ott lekérdezésnél ki lehet listázni például az "A" betűvel kezdődő neveket. De Pythonban a *nem akart működni. Ti tudjátok azt, hogy melyik ez a helyettesítő karakter?
Ui: A feladat az volt, hogy eldöntsük, hogy egy listában van-e "E"-vel kezdődő név.
Ahhoz hogy megnézd hogy E-vel kezdodik-e nem kell helyettesíteni semmit.. csak nézd meg az első karakterét:
>>> mystring = "hello"
>>> print(mystring[0])
h
Persze ha nagyon akarsz "helyettesíteni" akkor használhatsz RegEx-et, de ez ágyúval verébre és valószínűleg lassabb is lesz:
Regex-ben a bármi-t egy pont jelöli.
A valamiből bármenynit pedig a csillag.
Tehát a bármiből bármennyit a .*
Ahogy a 3. válaszoló javasolja, a probléma komplexitásához kell választani a megoldást. pl. kell-e arra számítani, hogy esetleg lesznek-e kisbetűvel írt nevek? ilyesmi
l = ['Elemér', 'Gábor', 'József', 'Emese', 'Zoltán', 'eduárd']
l_filtered = [x for x in l if x[0] == 'E'] # Case sensitive
l_filtered = [x for x in l if re.match('^E', x)] # Regular expression - case sensitive
l_filtered = [x for x in l if re.match('^E', x, re.IGNORECASE)] # Regexp - case insensitive
Erre - mind a lista elemeinek "végigmenésének", mind az adott elem ellenőrzésének - több módja van.
Készítettem egy példát, melyben mindegyikre mutatok egy-egy példát:
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, 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!