Pythonban hogyan lehet egy stringben zárójelben lévő számokat kiszedni és integerré alakítani?
Van 2 string: "Valami (98)" és "Valami (23)".
Szeretném vizsgálni, hogy a zárójelben lévő számok (jelen esetben 98 és 23) közül melyik a nagyobb. Ehhez hogyan tudom kivenni csak a számokat a stringből és intté alakítani?
A szó előttük megegyezik, a szó és a zárójel között szóköz is van, a számok viszont változóak, nem ismerem az értéküket, csak szeretnék rá assertelni, hogy egyik nagyobb, mint a másik.
import re
s = "Valami (98)"
int(re.findall(r'\((\d+)\)', s)[0])
Az alapján, amit leírták szerintem ez a legegyszerűbb:
s = "Valami (98)"
int(s[8:-1])
#4
Szerintem innen mindenki azt feltételezi, hogy a "valami" ebben az esetben nem a valami szót jelöli, hanem bármilyen string-et.
Ha nagyon egyszerűen szeretnéd megoldani akkor ez jó lehet:
a = "Valami (98)"
b = "Valami (23)"
c = a[8:10]
d = b[8:10]
for i in c, d:
if c > d:
print('A két szám közül nagyobb a ' + c + ' mint a ' + d)
break
else:
print('A két szám közül nagyobb a ' + d + ' mint a ' + c)
break
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!