- Red Magic 11 Air – vékony házból süvít a szél
- Csíptetős fülesek csatája – Sony LinkBuds Clip vs. Huawei FreeClip 2
- Mérföldkő a szilárdtest-akkuknál: fontos lépést tett a QuantumScape
- Újabb óriásakku a Honortól: az X80 lehet a következő 10 000 mAh-s modell
- iPhone 18 Pro Max: kis kapacitásbővítés hoz nagy előrelépést üzemidőben
- Poco F5 - pokolian jó ajánlat
- Az Opel Astra fedélzeti rendszere
- Samsung Galaxy S21 FE 5G - utóirat
- Samsung Galaxy S23 Ultra - non plus ultra
- Samsung Galaxy S25 - végre van kicsi!
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- iPhone topik
- OnePlus 15 - van plusz energia
- Fotók, videók mobillal
Új hozzászólás Aktív témák
-
cucka
addikt
Mivel lebegőpontos számokkal dolgozol, a
if S+E+M+O+T == 1:
sorod nem úgy fog működni, ahogy azt elképzeled. Használj fixpontos értékeket (kulcsszó: decimal). Amúgy mi értelme ennek a programnak?Amúgy kipróbáltam, a kérdéses belső if feltétele 851 alkalommal fog teljesülni a program futása közben, az s1, e1, stb. értékei minden esetben különbözőek, csak ugye minden alkalommal felül is írod a korábbi értékeket.
-
cucka
addikt
A hiba a while ciklusban van, ami egyel tovább fut, mint a stringed hossza.
Egyébként ha már pythonban programozol, akkor nem érdemes pythonra lefordított turbo pascal kódot írni.
Például pythonban könnyű végigiterálni bármin anélkül, hogy ciklusváltozóval b*szakodnál:def megtalal(szoveg, karakter):
ret = -1
for i,c in enumerate(szoveg):
if c == karakter:
ret = i
break
return ret(Az enumerate azért kell, hogy a string karakterei mellett azok indexét is megkapjuk, lásd a doksiban, hogy mit csinál pontosan. Ha erre nincs szükség, akkor elhagyható.)
Azt rád bízom, hogy gondold végig, vajon fog-e ez menni unicode stringekkel (nem), hogy hogyan oldod meg a hibakezelést, stb.

-
cucka
addikt
Az nem segít, ha a .py elejére beírom hogy :
Mert mit gondoltál, a python interpreter majd megérti az angol nyelvű leírást?
A unicode stringeket definiáld unicode típusúnak, továbbá kezdd ezzel a file-odat:
# coding=utf8Egyébként javaslom, hogy unicode karaktereket tartalmazó dict. kulcsok helyett oldd meg máshogy a feladatot.
-
cucka
addikt
Tesztkörnyezetnek mit ajánlotok?
Lehet. Van a sima windows-os python illetve létezik egy ActivePython nevű környezet is, mindkettő problémamentesen működik.
Javaslom, fejlesztés előtt döntsd el, hogy 2.x vagy 3.x verziójú python-t használsz, vannak eltérések.
Fejlesztőeszköznek Netbeans-t használok python-hoz, teljesen jó. -
cucka
addikt
Tudtok benne kód rövidítést? Esetleg "szebb" kódot?
Rövidítést nem, mert ez így pont elég rövid. Esetleg írhatnál kevesebb, de jobb minőségű kommentet
.Szebb kódhoz meg írd át szépen teljesen oop-s re.
Van egy vonat objektumod, aminek vannak vagonjai (ez egy lista, mert fontos a sorrend). A vagonoknak vannak ablakai (ezek nem feltétlenül osztályok), meg vannak emberek, akik a vagonban ülnek.
A vagonok tudják, hogy hanyadikak a sorban (ezt biztosítja nekik a vonat objektum) és ki tudják rajzolni magukat, illetve fel-le tudják kapcsolni egy adott ablakukat.
Nagyjából valami hasonló, sokáig el lehet ezzel szórakozni. -
cucka
addikt
A zip az egy listát csinál, aminek az elemei tuple-k (párok vagy n-esek)
A dict() az a dictionary konstruktor, ami egy ilyen listából dictionary-t csinál.A függvény return sorába meg bármit beírhatsz, mivel Pythonban a függvényeknél nincs előre meghatározva, hogy milyen típusú értékkel térnek vissza.
-
cucka
addikt
Ilyenkor mindig kulcs alapján járja be a szótárt?
Nem kulcs alapján járja be, hanem a kucsot kapod meg alapesetben ciklusváltozónak.ebben az esetben a print dico[computer] eredménye a számítógép lesz.
Nem, ennek az eredménye általában egy hibaüzenet lesz. Esetleg így érdemes:
print dicto['computer']Ebben az esetben, a szótárt úgy kezelem, mint egy objektum. a key az adott elem kulcsa, a value az adott elem értéke.
A szótár az egy objektum. Mindig.
Ebben az esetben nem a szótáron iterálsz végig, hanem a szótár.items() függvény visszatérési értékén, ami egy lista, aminek elemei (kulcs,érték) párok.A zip-hez szeretnék magyarázatot kérni.
Elmagyarázni hosszú, itt egy példakód, ami alapján le kell essen, hogy mire jó:
>>> digits=[1,2,3]
>>> hungarian=['egy', 'ketto', 'harom']
>>> english=['one', 'two', 'three']
>>> zip(digits,hungarian,english)
[(1, 'egy', 'one'), (2, 'ketto', 'two'), (3, 'harom', 'three')]Amúgy erre gondoltál? (hogy a visszatérési érték egy szótár, ami dic_inv a jelen példában) végül is mindegy, az a lényeg, hogy nem a "dico" szótár.
Ezt nem értem, a mellékelt kódot sem. -
cucka
addikt
for key in dico: - kulcs alapján a dico szótárban keres
Nem nyert. Ez egy ciklus, ami végigfut a dico nevű dictionary-n és a ciklus magjában a "key" nevű változóban találod az adott elem kulcsát.item=dico[key] - az item változóban a dico kulcsait tárolom.
Nem nyert. Az item változóhoz hozzárendeled a "dico" dictionaryból a "key" kulcs által meghatározott értéket. (Gy.k. - a dictionary az kulcs-érték párok halmaza)dic_inv[item]=key - na én itt valamiért úgy értelmezem, hogy dic_inv[dicokey]=key (ami ismét a dico-nak a kulcsai)
A dic_inv dictionary-hoz hozzáadsz egy új elemet, aminek a kulcsa a dico aktuális elemének az értéke, az értéke meg a dico aktuális elemének a kulcsa.Egyébként meg meg lehet ezt jobban is írni:
def inverse(dico):
dic_inv={}
for key, value in dico.items()
div_inv[value]=key
return dic_invVagy még jobban:
def inverse(dico):
return dict(zip(dico.values(), dico.keys()))Javaslom, próbáld megemészteni ezeket a verziókat is.

Új hozzászólás Aktív témák
- Assetto Corsa EVO
- Eredeti játékok OFF topik
- Helldivers 2 (PC, PS5)
- A Windowst és a macOS-t is váltaná a Google Aluminium OS
- Poco F5 - pokolian jó ajánlat
- Hisense LCD és LED TV-k
- Kormányok / autós szimulátorok topikja
- Azonnali játékos kérdések órája
- Milyen TV-t vegyek?
- Sorozatok
- További aktív témák...
- Msi Z170a Gaming M5 / I7-7700K / 16gb Ddr4 / Be quiet torony hűtő
- Medion Brand pc / I7-6700 / 16gb ram /Gtx 960 / 256gb ssd / 1tb hdd
- Asus Prime b350-Plus + Ryzen 5 1600 + gyári rgb hűtés
- Acrock Fatality Z97 Killer + I7-4790k + 4x4gb Ddr3
- Asus TUF Dash F15 (FX516PC) i5-11300H, 24GB DDR4, RTX 3050, 2x500GB Nvme
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB DDR5 RTX 5060 8GB GAMER PC termékbeszámítással
- Beszámítás! Sony Playstation 5 PRO 2TB Digital játékkonzol garanciával extrákkal hibátlan működéssel
- Csak kipróbált Mini-Erőmű! Mini-PC Ryzen 7 7840HS 16GB 512GB 1 év garancia
- Új Samsung GalaxyBook X360 FHD 2in1 OLED i7-1360P 12mag 16GB 512GB Intel Iris XE Toll Win11 Garancia
- GYÖNYÖRŰ iPhone 13 128GB Midnight-1 ÉV GARANCIA - Kártyafüggetlen, MS4483, 100% Akkumulátor
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs




