Hirdetés
- Luck Dragon: Asszociációs játék. :)
- Klaus Duran: HP wifi nyomtatás+ win11.
- sziku69: Fűzzük össze a szavakat :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sziku69: Szólánc.
- Brogyi: CTEK akkumulátor töltő és másolatai
- Gurulunk, WAZE?!
- Magga: PLEX: multimédia az egész lakásban
- eBay-es kütyük kis pénzért
Új hozzászólás Aktív témák
-
kovisoft
őstag
válasz
V.Stryker
#2206
üzenetére
Alapesetben egy adott elemeket tartalmazó listát létre tudunk hozni úgy, hogy szögletes zárójelek között felsoroljuk az elemeket (pl. [1,3,5,7]). De ezt nem mindig tudjuk vagy akarjuk megtenni. Sokszor adódik olyan helyzet, hogy a listát egy másik listából szeretnénk valamilyen szabály alkalmazásával legyártani. Ilyenkor írnunk kell egy ciklust, ami végigmegy az eredeti listán, és annak minden elemét (amely egy adott feltételt teljesít) behelyettesíti egy kifejezésbe, és az így kapott elemekből jön létre az új lista.
Például kiindulhatunk egy range(n)-ből, és a négyzetszámok listáját előállíthatjuk úgy, hogy mindegyik elemet négyzetre emeljük. Vagy a prímszámok listáját előállíthatjuk úgy, hogy kihagyjuk azokat, amelyeknek van valódi osztója, stb.
A List Comprehension azt teszi lehetővé, hogy a fenti ciklust behelyezzük a szögletes zárójelek közé, mindezt egy nagyon tömör és világos formában. Tehát ahelyett, hogy egyenként felsorolnánk az elemeket, megadjuk azt a szabályt amiből és amivel fel kell tölteni a létrehozandó listát. Ez a szabály áll egy kifejezésből: ezt kell alkalmazni minden szóbajöhető elemre, áll egy for ciklusból valamilyen ciklusváltozóval, ami végigmegy egy listán, és opcionálisan egy if feltételből, amivel szűrni lehet az elemek között:
[expression(i) for i in iterable if condition]ami azt jelenti, hogy menj végig az iterable objektum elemein az i ciklusváltozóval, és ha teljesül az adott i-re a condition feltétel, akkor helyettesítsd be az i-t az expression kifejezésbe, így hozz létre egy új listát.
Példa: 1-re végződő négyzetszámok:
[i*i for i in range(100) if (i*i)%10 == 1] -
Siriusb
veterán
válasz
V.Stryker
#2170
üzenetére
Próbáld meg innen kimásolni, itt olyan bajos a programkód beillesztés: https://pastebin.com/FFzscZrm
Ha a string elé egy ilyen "f" megjelölést teszel, a stringen belül "{}" jelek közt változókat tudsz behelyettesíteni.
Érdemes lenne esetleg time objektumot használni, ha már pontosabb időt akarsz: https://docs.python.org/3.7/library/time.html
-
Siriusb
veterán
válasz
V.Stryker
#2168
üzenetére
Ez legyen a legbonyolultabb hiba, amit elkövetsz!
Játszásiból kicsit felturbóztam a példát. 
Mivel az ember a lustaságáról ismerszik meg, az aktuális időpontból kiszedjük az órát, aztán egy ciklusban addig nyomjuk a delikvens óra alá a kérdést, amíg egész számot nem méltóztatik beírni, ezt a try-ban ellenőrizzük.
Legvégül kiíratjuk az időpontot, attól függően, mennyire álomszuszék a válaszoló.import time
while True:
most = time.localtime().tm_hour
alvas = Nonewhile type(alvas) is not int:
alvas = input('----------------\nJean, keltsen fel ennyi óra múltán: ')
try:
alvas = int(alvas)
except:
print('Egész számot írj be, süsü!')napok = alvas//24
orak = alvas%24
if napok == 0:
print(f'Önt Jean, a hű komornyik {(most+orak)%24} órakor fogja kelteni egy forró kávéval.')
else:
print(f'Szia Csipkerózsika!\nJean szólt a hét törpének, hogy {napok} nap múlva '
f'{(most+orak)%24} órakor rúgjanak ki az ágyból!') -
Siriusb
veterán
válasz
V.Stryker
#2149
üzenetére
Szia!
Gondolom ott is van terminál, szóval pl.:pip listKiírja a verziót, s hogy milyen csomagok vannak telepítve.
Szerk.: ha arra vagy kíváncsi, sérült-e a telepített állomány, azt passzolom.
Esetleg ez: https://pip.pypa.io/en/stable/reference/pip_check/
-
válasz
V.Stryker
#1966
üzenetére
Ja, valami fura MAC-es encodingja van a fájlnak. UTF-8-at kell használni, avgy megadni az encodingot ilyen formában:
# coding=<encoding name>Ennek a sornak a fájl első vagy második sorában kell lenni.
Második sorban akkor, ha az első sor a parancsértelmezőt tartalmazza, pl:#!/usr/bin/python
# coding: <encoding name> -
Siriusb
veterán
válasz
V.Stryker
#1960
üzenetére
Shift+Enter
Szerk.:
Egy nagyon felszínes bemutató, de talán érdemes átfutni: https://www.jetbrains.com/help/pycharm/quick-start-guide.html -
-
EQMontoya
veterán
-
válasz
V.Stryker
#206
üzenetére
- Bekéred a változókat (váltási arány, vátás iránya, hány számot jelenítsen meg (n) a sorozatból, melyik legyen az első eleme (m), mi legyen a növekmény (q))
- legenerálod a forrás tömböt
- megcsinálod a váltást
- kiiratodAddig jáccottam, míg meg nem csináltam szép csicsásra

m = int(input("Start number of the range:"))
n = int(input("Count of range numbers:"))
q = float(input("Base of the range:"))
conv_rate = float(input("Conversion Rate:"))
conv_dir = int(input("Conversion (0* - EUR to CAD, 1 - CAD to EUR):"))
nm = range(m, m+n)
source = [pow(q,i) for i in nm]
dest = [i*conv_rate for i in source]
conv_s = '+ {0:^10} {2} {1:^10} +'
val_pack = {}
if conv_dir != 1:
conv_s = conv_s.format('EUR', 'CAD', '==>')
val_pack = zip(source, dest)
else:
conv_s = conv_s.format('EUR', 'CAD', '<==')
val_pack = zip(dest, source)
print ('+{0:-<13}+{0:-<13}+'.format('-'))
print (conv_s)
print ('+{0:-<13}+{0:-<13}+'.format('-'))
for (eur, cad) in val_pack:
print ('| {0:>10.2f} | {1:>10.2f} |'.format(eur, cad))
pass
print ('+{0:-<13}+{0:-<13}+'.format('-'))
Új hozzászólás Aktív témák
- Philips LCD és LED TV-k
- Luck Dragon: Asszociációs játék. :)
- Melyik tápegységet vegyem?
- Vigneau interaktív lokálblogja
- Óra topik
- Mit várunk 2026-ban a mobilpiacon?
- Milyen légkondit a lakásba?
- Kertészet, mezőgazdaság topik
- Milyen autót vegyek?
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- További aktív témák...
- LG 55G4 - 55" OLED evo - 4K 144Hz & 0.1ms - MLA Plus - 3000 Nits - NVIDIA G-Sync - FreeSync Premium
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! ASRock H510M i5 11400F 16GB DDR4 512GB SSD ASUS ROG RX VEGA64 8GB CM Masterbox 5 700W
- Honor 200 Lite 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest




