Új hozzászólás Aktív témák
-
válasz
Siriusb
#1998
üzenetére
ez db feature, pl. oraclenél úgy hívják, hogy database change notification. pl. itt tudsz róla olvasni.
az oracle egyébként saját python modult írt az adatbázisához, ami képes erre. [link]ha ez nem áll rendelkezésre, akkor neked kell úgy megírni a szoftvert, hogy commit után értesítse a releváns 3rd party alkalmazásokat a változásról, és kikényszerítse az újbóli beolvasást.
-
válasz
Siriusb
#1998
üzenetére
Az adatbázis alapvetően egy lekérdező (tároló) rendszer - nem fog a lekérdezők felé eseményket generálni, hogy megváltozott valami.
Annyit tudsz csinálni, hogy a változtatásokra triggert írsz, ami egy táblában rögzíti az utolsó módosítás idejét. Azt a táblát lekérdezve meg tudod állapítani, hogy történt-e változás, és kell-e frissíteni a felületet. Amúgy az SQLite nem kifejezetten multiuser környezetbe lett tervezve, nem tudom egyáltalán rendelkezik-e megfelelő konkurencia-kezeléssel... -
Siriusb
veterán
Ismét némi útmutatásra lenne szükség: adott A osztály, amiben @property-vel és setter-rel létrehoztam egy attribútumot. Amennyiben ennek az értéke változik, miként tudom értesíteni az eseményről a B osztályba tartozó objektumomat?
Kicsit konkrétabban: jelen pillanatban azt szeretném megoldani, hogy az sqlite táblában történt változás esetén a táblából dolgozó, más ablakokban megjelenített Gtk.ListStore modellek adatai frissüljenek.
-
-
MATEO6600
őstag
IDE kérdés:
Mit szóltok a sima Visual Studio-hoz? Nem a Code-hoz.
Abban fejlesztek C#/C++ban, ezért gondoltam rá.
Vagy érdemesebb az erre szakosodott PyCharm-ot használnom? -
Siriusb
veterán
válasz
s1999xx
#1994
üzenetére
Múltkorjában kicsit belekóstoltam Java-ba. Eclipse-ben nagyon jól működött, hogy először megírtam a tesztet, és azt át lehetett konvertálni programkóddá.
Persze most én is úgy álltam neki, hogy az éppen megírt kódblokkra húztam rá a tesztet, ahogy sh* is írta.
Az érdekelt volna, hogy "kicsiben" a unittest-et használjátok, vagy pytest, nose2, akármi. -
-
cigam
titán
válasz
Janos46
#1977
üzenetére
+ ott a Pythonindomár ill az ott is ajánlott Hogyan gondolkozz úgy, mint egy informatikus: tanulás Python3 segítségével könyv.
A topik összefoglalóba össze kellene gyűjteni ezeket.
-
Siriusb
veterán
Tesztelésre mit használ/javasol a T. Társaság? Illetve melyik fázisban készítitek el a teszteket?
-
Siriusb
veterán
Elnézést mindenkitől, nem gondoltam, hogy ennyire félremegy itt a poénkodás.

-
kovisoft
őstag
Kár ezen a kígyós témán ennyit pörögni, a hivatalos python logó is két kígyót ábrázol ("two snakes" logo).
-
Janos46
tag
Sziasztok!
Időnként felbukkan egy-egy hozzászólás, amiben kérdezik hogy hol lehetne Pytonhoz oktató anyagot találni. Bóklászás közben találtam egy érdekes oldalt, amit még nem láttam említeni. Ezt a fullcircle.hu/pics/issue
oldalon lehet megtalálni. Ez egy 10 kötetből álló sorozat, kötetenként 15-45 oldalból áll. Remélem lesz aki hasznát is veszi.
Üdv: János -
V.Stryker
nagyúr
Köszi mindenkinek. Most már jó lett.

-
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> -
kovisoft
őstag
válasz
Siriusb
#1962
üzenetére
Hiányzik az 'l' a linked végéről, helyesen: https://www.jetbrains.com/help/pycharm/quick-start-guide.html
-
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 -
-
V.Stryker
nagyúr
PyCharm alap kérdés.
Ha elkezdek beírni valamit...vegyük a legegyszerűbbet print (" ... itt már ő nagyon okosan odateszi a ") -t nekem csak a köztes adatot kell beírni. Ha beírtam az adatot, akkor van rá mód,hogy a következő sorra ugorjak? Nem hiszem el, hogy mögé kell kattintani az enter előtt....

-
V.Stryker
nagyúr
válasz
EQMontoya
#1952
üzenetére
Köszönöm. Bénázgatok vele.
Beiratkoztam egy python tanfolyásra nulla programozói tudással, de csak áprlilisban kezdődik. Azt tudom már, hogy PyCharm-al fogunk dolgozni. Önállóan már próbáltam előzőleg is, más IDE-ket is és nekem kicsit nehézkesnek tűnik egy SublimeTexthez képest. De azt mondják, hogy többet is tud. Elfogadom.Már csak jól be kéne állítani, de olyan k.rva bonyolultnak tűnik.

-
EQMontoya
veterán
válasz
Siriusb
#1956
üzenetére
Kicsit szebb megoldas, ha letre sem hozod a felesleget.
Van egy defaultdict nevu cucc, ez pl. pont jo arra, amire Neked kell.
A kulcs egy touple, ami azokbol a dolgokbol all, amik egyezese eseten a ket sor egyformanak szamit, az ertek pedig az osszes tobbi olyannak a listaja, amit tenylegesen valtoztatsz.
d = defaultdict(list)
d[(key1, key2)] = [value1, value2]
d[(key1, key2)][1] = value3Ez azert jo, mert a memoriaban sem tarolsz N felesges objektumot, mindig csak az utolsot.
A vegen csak vegigiteralsz a kollekcion, visszaallitod belole a megfelelo sorokat, es kesz.
-
0xmilan
addikt
válasz
Siriusb
#1954
üzenetére
pandas drop_duplicates megoldassal:
Eloszor listabol pandas df: [link]labels = ['name', 'value', 'rowid']
df = pd.DataFrame.from_records(listad, columns=labels)
df.drop_duplicates(subset=['name','rowid'], keep='last', inplace=True)vagy valami hasonlo.
aztan df.tolist() vissza tudja elvileg rakni listaba, vagy to_csv() csv-be, vagy amibe szeretned.
Valoszinuleg van egyszerubb megoldas meg nagy az overheadje a lista > df konverzionak, de hirtelen ez jutott eszembe.
-
Siriusb
veterán
Pitonikus kérdés:

Adott egy táblázat, melyben szerkesztés során minden sorban egy vagy több oszlop értékét is lehet módosítani. Az adatokat egy sqlite3 adatbázisban tárolom.
Na már most, nem írok ki minden változást azonnal az adatbázisba, hanem egy tömbben, helyesebben list-ben eltárolom az sql kifejezést és az értékeket, s csak a legvégén rögzítem az új értékeket az adatbázisban.
Azonban mi van akkor, ha agyatlanul ugyanazon sor ugyanazon oszlopának értékét tízszer módosítom, mert bizonytalan vagyok, vagy mert tetszik a billentyűzet hangja? Ebben az esetben 9 sql kifejezés hajtódna végre teljesen feleslegesen, amikor csak egynek, a list-ben a legutolsónak kellene csak. Tehát a kérdés, mi a legpraktikusabb módja annak, hogy egy listából kitöröljem az egyforma (illetve csak egy elemében eltérő) lista elemeket, kizárólag az utolsót meghagyva. Tehát ebben:
[
[name1, val1, rowid1],
[name2, val2, rowid2],
[name1, val3, rowid1]
]
az első és harmadik elem "egyforma", így az első elem törlendő.Nekem csak az a megoldás jut eszembe, hogy slice készül a tömbből, soronként végigmegyek és összehasonlítom az eredeti tömbbel a sort, feljegyzem az indexeket és a ciklus végén az utolsó index kivételével törlöm az összest. figyelve arra, hogy egy-egy törlés után módosul a soronkövetkező tényleges index száma.
Egyébként más úton gondolkozva simán megoldhatnám úgy is (lévén kis mennyiségű adat), hogy az egész modelt (ListStore) visszaírom egy az egybe az adatbázisba, na de az elég csúnyácska megoldás lenne.
-
Siriusb
veterán
Pygtk kérdés:
Egy treeview első három oszlopát szeretném fagyasztani. Beépített megoldást nem találtam, ezért azt gondoltam, hogy két darab view lesz egymás mellett ugyanazon modellből dolgozva, csak éppen az adott oszlopok nem lennének megjelenítve. Viszont össze kéne kötni, ha sorbarendezek az egyik view-ban, azt a másik is tükrözze. Ez így működhet? Vagy van jobb megoldás? -
EQMontoya
veterán
-
V.Stryker
nagyúr
Pycharmban a szintaktikai ellenőrzést hogy kell lentebb venni, hogy kicsit gyorsuljon?
-
Janos46
tag
Sziasztok!
Bocsi hogy itt írok, de olyant hogy debian fórum nem találok, hátha itt ért valaki. hozzá.
Vettem egy ASUS Tinker Board-ot, amin Debian 2170417-1.8V fut (ezt az asus közölte velem kérésemre).
Próbáltam feltenni rá magyar nyelvet, de sehol nem találtam hozzá. Kérdeztem az ASUS információs szolgáltatást, de ezidáig ők sem tudnak segíteni (akkor meg minek gyártanak és árusítanak olyant amihez nincs megfelelő háttér, bezzeg a Raspberry!!!!) Tudna valaki segíteni?
Üdv. János -
V.Stryker
nagyúr
Sziasztok,
Az mitől lehet,hogy hiába telepítem fel Mac alatt a python 3.7.2-t, ha a terminálba beírom,hogy python --version, akkor a 2.7-et jelzi?

-
Siriusb
veterán
válasz
s1999xx
#1933
üzenetére
Nem, ez nem volt meg, mert a Move element left/right nálam inaktív, de a TAB-os megoldás tökéletes, kösz!
(#1934) EQMontoya
Óóó, én csak az esztétika miatt szoktam igazgatni, hogy amikor képernyőkímélőnek berakom a py fájlokat, akkor hasonlítson a Mandelbrot-halmazokhoz.
(#1936) cain69
Olyan esetre gondolok például, amikor nem használom a Surround with-et, csak beszúrok egy "if"-et és az alatta levő sorokat beljebb rendezném. Vagy fordítva.(#1935) sztanozs
-
Siriusb
veterán
Kösz, hogy említettétek a PyCharm-ot, kezdek egészen átszokni rá. Turkáltam kicsit a beállításokban, így már sokkal jobb, mert első ránézésre nem igazán jött be. Sőt, most már a Gtk kódkiegészítést is megoldottam némi keresgélés után, mert ennek hiánya hátrány volt számomra. Mondjuk azt nem értem, miért nem lehet jobbra-balra tologatni a sorokat, de ebbe beletörődök.
-
Siriusb
veterán
-
-
Siriusb
veterán
válasz
kovisoft
#1920
üzenetére
Szívem szerint így használnám, ahogy írtad, viszont emiatt nem akarok modult importálni. Az egyszerűség győzött.

(#1921) s1999xx
Az elmúlt héten éppen pdf fájlok bizonyos tartalmi részeinek kinyerésével foglalkoztam, ott tapasztaltam a magyar ékezetes betűknél is galibát, pl ő-ből hullámos "õ" lett. Mondjuk szerencsém volt, mert meg tudtam írni úgy a regex-eket, hogy ezek a betűk kikerüljenek a képből, szóval nem kellett vele foglalkoznom.(#1922) s1999xx
Jelen pillanatban angol szövegre használom, szóval a lower() a legegyszerűbb és legkevésbé erőforrás igényes megoldás.Néha beleesek abba a hibába, hogy egy sorba akarom zsúfolni az adott kódrészletet, aztán belátom hogy a legegyszerűbb nem mindig a legrövidebb, ráadásul ha később percekig kell bámulni, hogy mit is csinál az a sor.
Szóval van amikor jobb több sorban megvalósítani a célt, nem lehet az ember teljesen elvakult. -
kovisoft
őstag
válasz
Siriusb
#1919
üzenetére
Használhatsz regex-et is (mondjuk szebb nem lesz tőle):
import re
if re.search(r"\babc\b", "bla bbla ba ABC bla", re.IGNORECASE):A \b akkor kell, ha teljes szóra akarsz keresni ("word boundaries"), ha pedig kihagyod az utolsó IGNORECASE paramétert, akkor számítani fog a kis-nagybetű.
-
Siriusb
veterán
Ha azt vizsgálom, hogy egy adott szó benne van-e egy mondatban, függetlenül a kis- és nagybetűktől, létezik szebb és hasonlóan egyszerű megoldás annál, mint pl.:
if "abc" in "bla bbla ba ABC bla".lower():? -
kovisoft
őstag
válasz
AeSDé Team
#1915
üzenetére
Az nem működik, hogy az App importját áthelyezed későbbre, csak amikor már ténylegesen szükség van rá? Erre gondolok:
class Controller:
def __init__(self):
from app import App
self.app = App(self) -
AeSDé Team
őstag
Sziasztok!
Próbálok egy MVC modellre hajazó GUI alkalmazást létrehozni, és készítése közben bele futottam pár körkörös import problémába.
Van például egy controller.py fájlban lévő Controller osztályom, ami létrehoz egy app.py fájlban lévő App objektumot, és átad neki egy referenciát önmagára azért, hogy később az App osztály példánya tudjon információt kérni a Controller osztály példányától, és ne kelljen direktben az adatelérési réteghez fordulnia.A program egyszerűsített vázlata:
controller.py:
from app import App
class Controller:
def __init__(self):
self.app = App(self)def get_information(self):
return "some information"app.py:
from controller import Controller
class App:
def __init__(self, controller: Controller):
self.controller = controller
print(self.controller.get_information())Az app.py -ban található Controller import pusztán azt a célt szolgálja, hogy működjön PyCharm-ban a kódkiegészítés, és lássam a Controller osztály metódusait.
Emlékeim szerint Java nyelven simán megtehettem, hogy két osztály egymást importálja és egymásra hivatkoznak, persze egészen addig amíg nem írok végtelen ciklust. Pythonban hogyan érhetem el ugyan ezt a hatást? Azon kívül persze, hogy a két osztályt azonos .py fájlban helyezném el.Amennyiben az app.py definíciójából kihagyom a Controller osztály importját, és a konstruktorában a controller paramétert nem típusosan adom meg, a probléma megszűnik. Én viszont szeretném ha meglenne az az import hogy kódkiegészítést kaphassak az objektumra, ezt milyen módon érhetném el?
-
kovisoft
őstag
válasz
s1999xx
#1913
üzenetére
Ennyi erővel a print sem jó példa, mert python 3-ban a python 2-es print sem létezik. Arról volt eredetileg szó, hogy adva van egy python 2-es tankönyv, és milyen különbségek lehetnek a python 3-ra átállásnál. Aki tudja, hogy milyen különbségek vannak, annak nem okoz problémát, hogy megtalálja a 3-as megfelelőjét egy 2-es funkciónak. Aki nem nem tudja, az belefuthat majd a print, /, range, execfile, stb különbségekbe.
-
kovisoft
őstag
válasz
s1999xx
#1911
üzenetére
Mármint mire nem jó példa? Aki a python 2-es range()-hez van szokva, vagy most ismerkedik a nyelvvel egy python 2-es könyv alapján, annak egy python 3 REPL-ben nem minden fog úgy működni, ahogy gondolná. Pont úgy, mint mondjuk ha python 2-es osztást vagy printelést akar csinálni python 3-ban.
-
kovisoft
őstag
Engem régebben a range() készített ki Python 3-ban, ugyanis itt már lazy módon értékelődik ki (csak akkor, amikor ténylegesen felhasználjuk az elemeit). Próbálgattam command promptban mindenféle range-eket, és csak ennyit írt ki:
>>> range(10)
range(0, 10)Ugyanez Python 2-ben:
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]Python 3-ban pl. a list-tel lehet kikényszeríteni a kiértékelést::
>>> list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] -
Phobion
addikt
Sziasztok!
Tudtok ajánlani Budapesten korrekt Python képzést? Nagyon érdekel a python nyelv, nagyon szeretnék szakmát váltani (junior sysadmin). Merre érdemes elindulni?
Előre is köszönöm!
-
cousin333
addikt
válasz
Siriusb
#1889
üzenetére
Tudtommal Amerikában már a Python az első számú tanulónyelv az egyetemeken.
1. Nem szoktam GUI-t készíteni. Általában Jupyter Notebook-ot használok. Ha mégis kellene (egyszer már kellett), akkor én a Qt-re szavaznék, a Qt Designer használatával. De igazából a többit nem nagyon ismerem. Ami szerintem lényeges kérdés: programozott GUI, vagy sima drag&drop (lásd a már említett Qt Designer). Nekem mindenképpen az utóbbi.
2. Anaconda + PyCharm Community Edition. Szerintem mindent tudnak, amit kell, még azt is, amit nem. Csomagok frissítése (magát a Python verziót is beleértve!), ill. tesztelés, modul készítés, integrált verziókövetés, scratch... stb.
Új hozzászólás Aktív témák
- Inno3D GeForce RTX 4070 Ti X3 12G - Karácsonyi akcióban!
- Redragon Kumara K552 RGB Brown Switch magyar billentyűzet
- Lenovo Thinkpad P1 Gen 6 - i9-13980HX, 32GB, 2TB SSD, 16" WQUXGA (3840 2400), RTX 4090
- 15.gen! Intel Core Ultra 9 285K +16-32GB DDR5 RAM +hűtött VRM-es Z890 lap! GAR/SZÁMLA (a Te nevedre)
- OP AudioCodes C450HD Ip Phones - Szines kijelzős - Teams/ Zoom telefon - Új dobozos
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi









