- iPhone topik
- Milyen okostelefont vegyek?
- MWC 2026: Bajnoki címre pályázik a Xiaomi Watch 5
- Qualcomm lapkával és nagyobb teleppel várható a CMF Phone 3 Pro
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Google Pixel topik
- Xiaomi 17 Ultra - jó az optikája
- AI: tanulj már meg rendesen pózolni, ember!
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Samsung Galaxy S21 és S21+ - húszra akartak lapot húzni
Új hozzászólás Aktív témák
-
cousin333
addikt
válasz
Hege1234
#3653
üzenetére
Szerintem a megoldást a reguláris kifejezések és egy generátor kombinációja jelenti. Előbbi megkeresi a beadott sztringben az értékeket, utóbbi meg egyesével visszaadja a feldolgozott elemeket, amiket aztán felhasználhatsz a feldolgozás során. Egy gyors példa:
import redef process(text):for match in re.finditer(r'(\d+-\d+)|\d+', text):x = match.group()if '-' in x:a, b = x.split('-')for i in range(int(a), int(b)+1):yield ielse:yield int(x)Ezt így tudod használni az alábbi példaszövegen:
text = "1,2 3 4 25,16-20,22 7"x = list(process(text))#x: [1, 2, 3, 4, 25, 16, 17, 18, 19, 20, 22, 7]A kódodba meg az inputnál tudod beilleszteni:
text = input('\nírd ide a számot vagy számokat: ')for number in process(text):id_ = title['list'+str(number)]['j_id']print('\n'+str(id_))A lista felhasználása előtt esetleg sorrendbe rakhatod az értékeket, és egy set()-tel kiszűrheted a duplikátumokat.
Új hozzászólás Aktív témák
- Apple iPhone 11 64GB,Használt,Adatkabel,12 hónap garanciával
- LG SMART 32SR50F-W IPS Monitor! 1920x1080 / 8ms / 60hz
- Dell Inspiron 15 5567
- Bomba ár! HP ProBook 430 G5 - i5-8GEN I 8GB I 256SSD I HDMI I 13,3" FHD I Cam I W11 I Garancia!
- GYÖNYÖRŰ iPhone 13 Mini 256GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS4426, 100% AKKSI
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

