Új hozzászólás Aktív témák
-
slyder81
tag
Az előző skript alapján, hogy tudnám az ablak nevét megváltoztatni "tk" helyett az a szöveg amit én szeretnék?
Megoldva.

-
slyder81
tag
válasz
cadtamas
#997
üzenetére
Kössz. Úgy látszik egy rugóra jár az agyunk. Igy sem ment. De neked hála, megtaláltam a megoldást.
A self.item sorba szintén beraktam egy tags ='ed' részt s kiegészitettem igy a kódot:def mouseDown(self, event):
self.currObject =None
self.x1, self.y1 = event.x, event.y
self.selObject = self.c.find_closest(self.x1, self.y1)
self.tags = self.c.gettags(self.selObject)#Kiolvassuk a tag-et
print self.tags
if self.tags ==('kor', 'current'):
self.c.itemconfig(self.selObject,width =3)
self.c.lift(self.selObject)
if self.tags == ('ed', 'current'):
self.selObject =NoneIgy már megy a dolog tökéletesen. Hálás köszönet.
-
cadtamas
tag
válasz
slyder81
#996
üzenetére
Próbáld meg ezzel:
def mouseDown(self, event):
self.currObject =None
self.x1, self.y1 = event.x, event.y
self.selObject = self.c.find_closest(self.x1, self.y1)
sel.tags = self.c.gettags(self.selObject) #Kiolvassuk a tag-et
if self.tags=='kor': #talán vedd hozzá hogy 'current' ha nem működik rendesen
self.c.itemconfig(self.selObject,width =3)
self.c.lift(self.selObject)
else:
self.currObject =None #így már elvileg nem fogja mozgatni -
slyder81
tag
válasz
cadtamas
#995
üzenetére
De jó, végre valami nyom.
Sajnos nem jó, de a nyom igen. Csak meg kell találni a megfelelő alkalmazási módot.
Ha aself.tagslistát print utasitással kiolvasás után kiirattatom, akkor ha a körökre katintok akkor ('kor', 'current') tartalmat kapok. De ha a képre akkor csak('current',) kapok. A baj az hogy a kép még mindig mozog. -
cadtamas
tag
Na, ez lesz most az utolsó.
Találtam ezt a tag-es megoldást.
Remélem működni fog:#-*- coding:Utf-8 -*-
from Tkinter import *
from random import randrange
import random
class Draw(Frame):
def __init__(self):
Frame.__init__(self)
#Vászon létrehozása, kép betöltése, megjelenitése
self.c = Canvas(self, width =1292, height =916, bg ='grey', bd =2, relief =SOLID)
self.photo = PhotoImage (file ='alap.gif')
self.item = self.c.create_image(640, 450, image=self.photo,activeimage= None)
self.c.grid(row =1, column =1, rowspan=6, padx= 0, pady= 5)
#A szines körök kezdőpoziciója, létrehozása
x1, y1,x2,y2 = 100, 100,150,50
x3, y3,x4, y4 = x1 ,y1,x2, y2+100
self.c.create_oval(x1, y1,x2,y2, fill ='red', tags='kor') #adunk hozzá egy tag-et
self.c.create_oval(x3, y3,x4, y4, fill ='blue', tags='kor')
#Az egér 'érzékelése'
self.c.bind("<Button-1>", self.mouseDown)
self.c.bind("<Button1-Motion>", self.mouseMove)
self.c.bind("<Button1-ButtonRelease>", self.mouseUp)
self.grid()
# Az egér események definiállása
def mouseDown(self, event):
self.currObject =None
self.x1, self.y1 = event.x, event.y
self.selObject = self.c.find_closest(self.x1, self.y1)
sel.tags = self.c.gettags(self.selObject) #Kiolvassuk a tag-et
if self.tags=='kor':
self.c.itemconfig(self.selObject,width =3)
self.c.lift(self.selObject)
def mouseMove(self,event):
x2,y2 =event.x, event.y
dx, dy =x2 -self.x1, y2 -self.y1
if self.selObject:
self.c.move(self.selObject, dx, dy)
self.x1, self.y1 =x2, y2
def mouseUp(self, event):
if self.selObject:
self.c.itemconfig(self.selObject,width =1)
self.selObject =None -
cadtamas
tag
válasz
cadtamas
#993
üzenetére
Eh, hülyeséget beszélek.
Ha kitörlöd a hivatkozást a következő sor hibát fog kiadni.Akkor viszont én arrafelé tapogatóznék, hogy a mozgatható elemeket beletenném egy listába és hozzáadnék egy sort a mouseDown() metódushoz, hogy csak akkor működjön ha az objektum eleme a a listának.
-
cadtamas
tag
válasz
slyder81
#991
üzenetére
Én ugyan nem vagyok szakértő a témában, nagyjából ugyanott tartok a programozásban, mint te, de az a probléma, hogy mint objektum van behelyezve a háttér gif a vászonra.
Ne adj neki nevet és akkor nem lesz szerintem gond.Nem tudom kipróbálni, de én valami ilyennel próbálkoznék:
class Draw(Frame):
def __init__(self):
Frame.__init__(self)
#Vászon létrehozása, kép betöltése, megjelenitése
self.c = Canvas(self, width =1292, height =916, bg ='grey', bd =2, relief =SOLID)
PhotoImage (file ='alap.gif') #Ha nem adsz neki nevet, nem fogja megfogni szerintem.
self.item = self.c.create_image(640, 450, image=self.photo,activeimage= None)
self.c.grid(row =1, column =1, rowspan=6, padx= 0, pady= 5)
#A szines körök kezdőpoziciója, létrehozása
x1, y1,x2,y2 = 100, 100,150,50
x3, y3,x4, y4 = x1 ,y1,x2, y2+100
self.c.create_oval(x1, y1,x2,y2, fill ='red')
self.c.create_oval(x3, y3,x4, y4, fill ='blue')
#Az egér 'érzékelése'
self.c.bind("<Button-1>", self.mouseDown)
self.c.bind("<Button1-Motion>", self.mouseMove)
self.c.bind("<Button1-ButtonRelease>", self.mouseUp)
self.grid()
# Az egér események definiállása -
üdv, a topicnak!
tudja valaki, hogy a pip honnan szedi a compiler pathokat? egész pontosan a c++ fordítóét. cx_Oracle modullal kell dolgoznom, és ezt le kell fordítgatnom, mert a fejlesztője ritkán updateli a python új alverzióihoz. 3.4hez van, 3.6hoz már nincs. a hiba, hogy a cl.exe hiányára hivatkozva leáll a pip install (pip install cx_Oracle). felraktam hozzá a 14.xx visual c++ runtimeot, de nem változott semmi. a vicc, hogy még akkor is sem találja a cl.exe-t ha ugyanabból a könyvtárból indítom a pipet, ahol van.
win10, py3.6. -
slyder81
tag
válasz
slyder81
#990
üzenetére
Itt a kód részlet(természetesen valami képet be kell rakni a kód mappájába,alap.gif helyett):
#-*- coding:Utf-8 -*-
from Tkinter import *
from random import randrange
import random
class Draw(Frame):
def __init__(self):
Frame.__init__(self)
#Vászon létrehozása, kép betöltése, megjelenitése
self.c = Canvas(self, width =1292, height =916, bg ='grey', bd =2, relief =SOLID)
self.photo = PhotoImage (file ='alap.gif')
self.item = self.c.create_image(640, 450, image=self.photo,activeimage= None)
self.c.grid(row =1, column =1, rowspan=6, padx= 0, pady= 5)
#A szines körök kezdőpoziciója, létrehozása
x1, y1,x2,y2 = 100, 100,150,50
x3, y3,x4, y4 = x1 ,y1,x2, y2+100
self.c.create_oval(x1, y1,x2,y2, fill ='red')
self.c.create_oval(x3, y3,x4, y4, fill ='blue')
#Az egér 'érzékelése'
self.c.bind("<Button-1>", self.mouseDown)
self.c.bind("<Button1-Motion>", self.mouseMove)
self.c.bind("<Button1-ButtonRelease>", self.mouseUp)
self.grid()
# Az egér események definiállása
def mouseDown(self, event):
self.currObject =None
self.x1, self.y1 = event.x, event.y
self.selObject = self.c.find_closest(self.x1, self.y1)
self.c.itemconfig(self.selObject,width =3)
self.c.lift(self.selObject)
def mouseMove(self,event):
x2,y2 =event.x, event.y
dx, dy =x2 -self.x1, y2 -self.y1
if self.selObject:
self.c.move(self.selObject, dx, dy)
self.x1, self.y1 =x2, y2
def mouseUp(self, event):
if self.selObject:
self.c.itemconfig(self.selObject,width =1)
self.selObject =None
if __name__ =='__main__':
Draw().mainloop() -
slyder81
tag
Hali.
Látom nem túl aktiv ez a fórum, de megpróbálom, hátha tud valaki gyógyírt a problémámra.
Elolvastam az egész fórumot, de sajna látom a tkinterrel nem túl sokan foglalkoznak, de hátha mégis lesz valakinek valami ötlete. Pár éve kezdtem pytonkodni, de viszonylag nagy kihagyásokkal. Az angolom sajna nem túl erős,.
Sikerült összedobnom egy viszonylag hosszadalmas kódot, lényegeben egy 2 személyes táblás társasjáték. El is döcög a szkriptecske de van egy problémám.
Adott egy ablak amiben egy canvas ra betöltöttem egy gif kiterjesztésű képet ( tudom roszab a minősége, de a celnak megfelel, a projekt már túl előrehaladott volt már mikor szembesültem hogy vaszonra nem lehet jobb minőségű képet alkalmazni). A képre rajzoltam két szines kört, amit a képet tartalmazó canvasból származtattam le(ugye az véget, hogy a képen legyen,ezek ugyanis a figurák). Utánna jött a feketeleves. Hosszú órákon át tartó kinylódás után sikerült hozákötnöm az egér eseményhez ezt a két szines köröcskét(ha a kör fölé húzom az egér mutatót s lenyomott bal gombal odébb húzom, akkor a kiválasztott kör mozog, mindaddig, még el nem engedem a gombot). Na szóval az lenne a gond, hogy ha véletlenül a köröcske mellé kattintok(ugye ez esetben a képre) s megmozditom az egeret, akkor a képet elmozditom a vásznon s a kereten kivülre kerül a kép egy resze. Ez számomra nem világos, mert a kép mérete és a vaszon mérete teljessen egyforma.
Átlátszó vászonnal pl meg tudnám oldani, de sajnos ilyen opció nincs.
Ha le tudnám fixálni a meglévő vaszon szélét, hogy a képet ne tudjam elhúzni, az is kielégitő megoldás lenne.
Utólag rátaláltam a Label opcióra, ami még jobban is megfelelne(a képformátumok miadt) , de itt viszont az a gondom, hogy egy label felületre már nem tudok canvast tenni, mivel ha a meglévőből származtatom akkor a label felület alá kerül.
Mivel már üzemel az egész projekt, nem szivessen irnám át az egész kódot(össz-vissz van par 100 sor)
Esetleg valkinek valami ötlete?
Ha hazaérek fel tudom tenni a kérdéses kódrészletet. -
l.skywalker
titán
Sziasztok. 2 hónapja kezdtem el Pythont tanulni az Udemy-n. Abszolút önszorgalomból, mert rádöbbentem, hogy ezzel szeretnék foglalkozni, egyébként szolgáltatás-menedzsment területen vagyok jómunkás. Most találtam rátok, remélem majd hasznos tagja lehetek a fórumnak itt is!
-
eames
tag
válasz
cousin333
#987
üzenetére
Nagyon köszönöm neked is és EQMontoyanak is a segítséget!
Végül ezzel csináltam meg:
with open('myfile.txt', 'r') as f:
filmlista= [line.strip('\n ') for line in f if line != '\n']
osszesites = {}
for alkotas in filmlista:
cim, rendezo = alkotas.split(';')
if rendezo in osszesites:
osszesites[rendezo] += 1
else:
osszesites[rendezo] = 1Tökéletesen működik!
-
cousin333
addikt
válasz
EQMontoya
#986
üzenetére
Tudom, ismerem, de azért köszönöm a kiegészítést. Az már mondjuk inkább Python level 2 szintű megoldás...
. Plusz kell hozzá még egy sor:from collection import defaultdictÖsszességében az eredeti 9 sor kódból lett 7. A level 3 megoldás meg már csak 3 soros:
import pandas as pd
data = pd.read_table('myfile.txt', sep=';', names=['Film', 'Rendezo'])
data.Rendezo.value_counts() -
cousin333
addikt
Én kezdőként így csinálnám:
megnyitom a fájlt olvasásra (kulcsszó: open, with)
soronként beolvasom a fájlt egy listába (pl. list comprehension, strip)
készítek egy üres szótárat (dictionary)
soronként végigmegyek a listán (for)
szétválasztom a címet és a rendezőt (split, ahogy már előttem írták)
ha a rendező még nem szerepel a szótárban,
akkor hozzáadom a nevét a szótárhoz egy 1-es számmal, vagy a film címével (listában)
ha a rendező szerepel a szótárban,
akkor hozzáadok a név melletti számhoz 1-et, vagy a név melletti listához a filmcímetEz kb. annyi kód, amennyivel fentebb leírtam, minden sorhoz egy kódsor tartozik. Az első módszerrel (a vagy előtt) a rendező által rendezett filmek számát kapod, az alternatív megoldással meg azt, amit most írtál, hogy ki szeretnéd hozni.
SPOILER! A kód kb. így nézne ki az első módszerrel (filmszámolás):
with open('myfile.txt', 'r') as f:
filmlista= [line.strip('\n ') for line in f if line != '\n']
osszesites = {}
for alkotas in filmlista:
cim, rendezo = alkotas.split(';')
if rendezo in osszesites:
osszesites[rendezo] += 1
else:
osszesites[rendezo] = 1És a for ciklus így nézne ki a másodikkal:
for alkotas in filmlista:
cim, rendezo = alkotas.split(';')
if rendezo in osszesites:
osszesites[rendezo].append(film)
else:
osszesites[rendezo] = [film]Remélem működnek, nem teszteltem le.
-
Lacc
aktív tag
-
eames
tag
Sziasztok!
Szeretnék segítséget kérni. Pythont tanulok, önerőből, szóval nem igazán van tétje, de nagyon érdekelne a megoldás.
Szóval a feladat: van egy két oszlopból álló tábla, .txt-ben. Film címek és a rendező, pl: La La Land;Damien Chazelle. Nekem loadolnom kell ezt a fájlt és megszámolni, egy-egy rendező hány filmet rendezett a listából. Odáig eljutok, hogy minden egyes szót megszámol ami a táblában van, de nem tudom hogy kéne, hogy csak a ;utáni karaktereket nézze és összesítse...? Vagy rosszul gondolkozom?
-
Lacc
aktív tag
Kolléga próbálta, könnyedebb, mint a Django, nincsen benne például template kezelő rendszer, meg admin felület. Django fullframework, a Flask inkább microframework.
Django sok mindent készen ad, a Flask esetében neked kell megírnod, cserébe nincs tele sok "felesleges kóddal", amit te úgy sem használnál ki.
Ha gyorsan kell valami és kis projektekről beszélünk, akkor Flask, gyorsabban is meglehet tanulni, illetve ha szereted magad csinálni a dolgokat (admin felület, user login)
Én inkább mondanám a Djangot, főleg akkor ha szeretnél vele dolgozni, munkát vállalni. (Ugyanis a Django a legnépszerűbb) -
Lacc
aktív tag
válasz
cousin333
#974
üzenetére
Odáig még nem jutottam el, jó lenne az alapokat is megismerni, hogy később legalább tudjam, hogy mégis mi az egész alapja. Később valszeg úgy is modulokat fogok használni, ha jól gondolom a NumPy a leghíresebb erre.
Előbb még Python, és Algoritmusok - le kell porolni
. Ezekre van egyelőre konkrét tervem is. ML-re csak annyi, hogy az is kell, de lehet ehhez majd egy Coursera.org féle kurzus alapján készülök, ez még annyira nem konkrét, hogy pontosan miből és hogyan fogok tanulni.
Ez csak szép lassan fog megvalósulni. Munka, Egyetem MSc - levelezőn, Nyelvtanulás és egyéb. -
cousin333
addikt
Hogyan képzelted a Machine Learning-et? Kézzel lekódolod az alapoktól és futtatod? Mert léteznek modulok külön erre a célra. Nem tudom, hogy azok belsőleg milyen pontosságot használnak, vagy egyáltalán milyen adattípusokat, de csak jól működnek, ha erre lettek kitalálva...

-
cousin333
addikt
válasz
EQMontoya
#968
üzenetére
Én is erre gondoltam először, de a #966-ban egyértelműen ott van, hogy
prec = 28(ez az alapértelmezés). Amit én írtam, az meg nem fog működni, mert hibásan adtam meg. De ha jó lenne, akkor sem menne, mert egy másik config esetében sincs semmi a flags-nél, mégis jó. Aclamp = 1-re gondoltam még, mint lehetséges ok, de az sem az. Szóval most már nem tudom, mi van... -
Bazs87
tag
válasz
cousin333
#961
üzenetére
A végső megoldásként sikerült megoldanom a telepítést a 3.6-tal tesztként. A lib működik.
A mySQL legújabb konnektora viszont 3.4-hez jó, ezért visszaléptem kettőt és nagy szerencsémre úgy is működőképes a lib.
A pypet nem sikerült működésre bírnom, ezért maradt a cmd-s installálás.Köszönöm a segítséget!
-
Lacc
aktív tag
válasz
cousin333
#965
üzenetére
Aha, de akkor is érdekes, hogy nem az a szám, aminek lennie kellene, az még mindig csak egy '0'
>>> import decimal
>>> decimal.Decimal(55/165)
Decimal('0')
>>> decimal.getcontext()
Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999999, Emax=999999999, capitals=1, flags=[], traps=[InvalidOperation, Overflow, DivisionByZero]) -
cousin333
addikt
Mert csak a Decimal-t importáltad a decimal modulból. Írd ezt és akkor lesz:
In [1]: import decimal
In [2]: decimal.Decimal(19/155)
Out[2]: Decimal('0.12258064516129031640279123394066118635237216949462890625')
In [3]: decimal.getcontext()
Out[3]: Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, ca
pitals=1, clamp=0, flags=[FloatOperation], traps=[InvalidOperation, DivisionByZe
ro, Overflow]) -
cousin333
addikt
Nálam a 3.6 van telepítve és jól működik.
Nálad mit ad vissza a decimal.getcontext() függvény? Nálam:
Out[6]: Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, ca
pitals=1, clamp=0, flags=[FloatOperation], traps=[InvalidOperation, DivisionByZe
ro, Overflow]) -
Lacc
aktív tag
Sziasztok!
Na átnéztem egy kis tutorial a float, Decimal és Fraction témaköréből, tanulságos. De nekem nem úgy műkődik a Python kódom, ahogy a könyvben.
Könyvben:
>>> Fraction(19/155)
Fraction(8832866365939553, 72057594037927936)
>>> Decimal(19/155)
Decimal('0.12258064516129031640279123394066118635237216949462890625')Nálam:
>>> Fraction(19/155)
Fraction(0, 1)
>>> Decimal(19/155)
Decimal('0')Na most akkor ez hogyan lehetséges, hogy én rossz kerekített értékeket kapok?
Tökmindegy, hogy Python 2.7 vagy Python 3.5, ugyanez az eredmény. A Fraction és Decimal osztályok importálva vannak, különben hibával elszállna a program. -
cousin333
addikt
A már említett PyPi oldalon rákeresve, vagy a modul honlapján le van írva, hogy éppen mivel kompatibilis. Nem biztos, hogy ki van írva az összes jó változat, legtöbbször pl. 2.7+ és 3.3+ jelölés szerepel. A legfontosabb, hogy a 2-es és 3-as verziókat kell külön kezelni. Sok modul ráadásul csak gyári függvényeket használ, avagy "pure Python", az ilyeneknél nem szokott gond lenni a kompatibilitással. A Githubon szoktak lenni readme fájlok, de a kisebb projektek általában gyengébben dokumentáltak, beleértve a kompatibilitást is. Általában ami támogatja a Python 3-at az fut a legfrissebb változattal is, legfeljebb nem használja ki az újdonságokat.
Szerintem egy kicsit túlpörgöd ezt a témát, ami neked kell, az benne van az alaptelepítésben is. Ahogy írtam, a pip remekül használható külsős modulok telepítésére, automatikusan a kívánt verziót teszi fel (pl. 32 vs 64 bit), a függőségekkel együtt. A githubos Home asistant könyvtárad is fel tudod így tenni:
C:\> pip install pyhs100
-
Bazs87
tag
válasz
cousin333
#959
üzenetére
Értem. Akkor a legújabb python repül rá fel. A pippel pedig megpróbálom a libet végre működésre bírni.
Az előbbi leírásaitok alapján tisztában kéne lennem, hogy melyik lib melyik verzióhoz tartozik, mik a követelményei stb. Ennek hol tudok utánanézni, van valamilyen gyűjtőoldal, vagy googli megmondja nekem x hét keresés meg kellemetlenség után?
Nem tudjátok, a githubon szerepelhet valahol a telepített teszt/fejlesztőrendszer leírása (a libet pontosan ezzel az idle verzióval, ezekkel a libverziókkal ilyen oprendszerrel installálta és tesztelte a készítője)?
Köszönöm!
-
cousin333
addikt
Szerintem nyugodtan töröld a mostani Pythont, és tedd fel helyette a legfrissebbet: Python 3.6.0. A gyári könyvtárak nyilvánvalóan támogatottak (lásd urllib), ahogy a kérdéses külső modulok is:
- Requests
- Beautiful SoupHa feltetted a friss Pythont, akkor elvileg lesz parancssorból működő pip-ed is, amivel a fent említett modulokat is telepítheted, az esetleges függőségeikkel együtt:
C:\> pip install requests beautifulsoup4
A PyPi-t nem tudod feltenni, mert az csak a hivatalos honlap a külsős Python modulok számára. Azért említettem, mert a pip elvileg minden csomagot fel tud tenni, amit itt megtalálsz, de ez inkább a későbbiekre szól.
-
Mr Dini
addikt
Üdv!
Chromiumot szeretnék fordítani, de a gn tool, ami python2.7 alapú, nem akar elindulni...
Itt található a kódja. És ez maga a hiba:
Traceback (most recent call last):
File "/home/pisti/Asztal/depot_tools/gn.py", line 38, in <module>
sys.exit(main(sys.argv))
File "/home/pisti/Asztal/depot_tools/gn.py", line 33, in main
return subprocess.call([gn_path] + args[1:])
File "/usr/lib/python2.7/subprocess.py", line 522, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1335, in _execute_child
raise child_exception
OSError: [Errno 8] Exec format errorMit tudok ezzel kezdeni?
Köszi!

-
Bazs87
tag
válasz
cousin333
#942
üzenetére
Köszönöm a reakciót cousin333!
A 3.3-at azért használtam, mert a gépemre épp az volt letöltve.
Közben megtaláltam hogyan kell cmd-ben libet installálni, de az általad javasolt megoldás sokkal szimpatikusabb.
Te milyen verziót használsz/javasolsz?Első körben idle 2.7-tel fel is tudtam installálni a libet, de hibára futott a rossz verzió miatt. Azt mondták, hogy a 3-asat használjam, de melyiket?
A pip installálás is a win cmd-ben megy?A "nagy" pythonos tervek alábbhagytak, most már csak az a cél, hogy ez a lib menjen. (perpill a setuptool és egy másik lib körhivatkozást hoztak létre és egymást kérik az install teljesítéséhez).
Felrakom az általad javasolt python verziót, no meg a PyPi-t és szerencsét próbálok még egyszer.
Egy elvileg 5 perces problémával szenvedek napok óta, velem van a gond?Köszi előre is!
-
EQMontoya
veterán
válasz
pbalintka
#952
üzenetére
Egy integer 24 byte-ot foglal le, míg a None csak 16-ot. Nem sok de, nagyobb programnál számítani fog.
No ezt azért gondoljuk már át még kétszer.

Kis olvasnivaló, ezt a részt ajánlom figyelmedbe:
The current implementation keeps an array of integer objects for all integers between -5 and 256, when you create an int in that range you actually just get back a reference to the existing object. So it should be possible to change the value of 1. I suspect the behaviour of Python in this case is undefined. :-)
Pythno3-ban már kicsit másképp működik, de az, hogy pontosan hány int(1) objektumod van a rendszerben, illetve hány referenciád azokra, az közel sem olyan triviális, mint ahogy azt Móricka gondolta.
-
pbalintka
csendes tag
válasz
cadtamas
#950
üzenetére
A circle függvényed nem tér vissza semmivel, csak kört rajzol. Igy amikor törölni szeretnéd a mouth-t akkor gyakorlatilag annak értéke semmi (None típus).
Írj egy return-t a függvényed végére, hogy adja vissza az object-et!
def circle(can,x,y,r,color="white"):
"A <can> vásznon egy <r> sugarú kör rajza <x,y>-ban."
return can.create_oval(x-r,y-r,x+r,y+r,outline=color) -
cadtamas
tag
Ugyanaz a feladat, de egy olyan probléma, amit nem tudok hova tenni.
from tkinter import*
def circle(can,x,y,r,color="white"):
"A <can> vásznon egy <r> sugarú kör rajza <x,y>-ban."
can.create_oval(x-r,y-r,x+r,y+r,outline=color)
class Application(Frame):
def __init__(self,master=None):
Frame.__init__(self) #szülőosztály constructor
#self.master = master #ezt muszáj volt inaktívvá tenni, mert nem engedte bezárni a főablakot
self.pack()
#Példány attribútomok inicializálása:
self.canv=Canvas(height=400,width=400,bg='white')
self.canv.pack(side=TOP,padx=5,pady=5)
self.face=Visage(self.canv)
Button(self,text="Open", command=self.face.open).pack(side=RIGHT)
Button(self,text="Close", command=self.face.close).pack(side=RIGHT)
class Visage:
"""Arc rajzoló osztály"""
def __init__(self,canv_):
self.canv=canv_
circle(canv_,200,200,150,color="black") #fej
circle(canv_,160,160,30,color="black") #bal szem
circle(canv_,160,160,10,color="black")
circle(canv_,240,160,30,color="black") #jobb szem
circle(canv_,240,160,10,color="black")
circle(canv_,200,200,20,color="black") #orr
self.mouth=0 #száj
def open(self):
self.canv.delete(self.mouth) #törlés
self.mouth=circle(self.canv,200,270,30,color="black")
def close(self):
self.canv.delete(self.mouth) #törlés, de valamiért nem törli!!!
self.mouth=self.canv.create_line(170,270,230,270,fill='black')Az open metódus működik rendesen, de a close nem.
Arra tudok gondolni, hogy valamiért nem működik a delete metódus és az open() csak elfedi a vízszintes vonalat, de nem törli.
Az működne ha letörölném az egész vásznat és újrarajzolnám az arcot is, de szerintem ennek is kellene működnie.
Már órák óta ezen agyalok, de nem jutok dűlőre. -
cousin333
addikt
válasz
pbalintka
#945
üzenetére
Ez valóban félreérthető volt, a zárójeles rész csak magyarázat akart lenni. Azt szerettem volna kifejezni, hogy az urllib2 (hangsúly a "2"-n!) a Python 2 gyári modulja, és mint ilyen, nincs keresnivalója a Python 3-ban. Utóbbiban gyárilag nincs is benne (ezzel a névvel), ha megnézed a dokumentációt, és a lap tetején kiválasztod valamelyik 3-as verziót, akkor a főoldalra dob, pont emiatt.
Ő Python 3-at használ, tehát ne erőltesse az urllib2 telepítését (ő írta, hogy külön megpróbálta feltenni), használja a gyárilag meglévő "sima" urllib-et. Ha nem írja konkrétan a "2"-est, nem is akadok fenn rajta.
Magyarán nincs szó arról, hogy ne használjuk a gyári modulokat, sőt! De ne próbáljunk a 3-as Pythonba "kiselejtezett 2-es modulokat" beledrótozni.
Amúgy az utóbbi időben talán a time volt az egyetlen gyári modul, amit direktben használtam, szinte mindig külsős fejlesztéseket importáltam (amik persze építenek a gyári modulokra is, de ez legyen az ő problémájuk). Mellesleg pont azért, mert kényelmesebbek, mint a "lower level" gyáriak.
Na, jó sokat írtam kb. a semmiről, de remélem már érthetőbb voltam.
-
pbalintka
csendes tag
válasz
cousin333
#942
üzenetére
"Ahogy nézem az urllib2 a Python 2 telepítés része (gyári modul), így használata semmiképpen sem javasolt."
Ezt nem értem. Ha valami gyári modul, akkor annak használata miért nem javasolt? Elég hardcore gyári modulok nélkül pythont használni. Tegyük fel socket-et akarok programozni, akkor keressek a neten egy másik modult hátha valaki feltalálta újra a "kereket"? Vagy egy egyszerűbb példa a re (regex ami eléggé hasznos) modul, szintén gyári.
-
pbalintka
csendes tag
válasz
cadtamas
#943
üzenetére
A Frame-t elfelejtetted "pack"-olni:
from tkinter import*
def circle(can,x,y,r,color="white"):
"A <can> vásznon egy <r> sugarú kör rajza <x,y>-ban."
can.create_oval(x-r,y-r,x+r,y+r,outline=color)
class Application(Frame):
def __init__(self, master=None):
Frame.__init__(self) #szülőosztály constructor
self.master = master
self.pack(fill=BOTH, expand=1) # EZ HIANYZOTT
#Példány attribútomok inicializálása:
self.canv=Canvas(height=400,width=400)
self.canv.pack(side=TOP,padx=5,pady=5)
Visage(self.canv)
Button(self, text="Open", command=self.open).pack()
Button(self, text="Close", command=self.shout).pack()
def shout(self):
Visage.mouth=self.canv.create_line(170,270,230,270,fill='black')
def open(self):
Visage.mouth=circle(self.canv,200,270,30,color="black")
class Visage:
"""Arc rajzoló osztály"""
def __init__(self,canv_):
self.canv=canv_
circle(canv_,200,200,150,color="black") #fej
circle(canv_,160,160,30,color="black") #bal szem
circle(canv_,160,160,10,color="black")
circle(canv_,240,160,30,color="black") #jobb szem
circle(canv_,240,160,10,color="black")
circle(canv_,200,200,20,color="black") #orr
self.mouth=0 #száj
root = Tk()
app=Application(root)
app.mainloop() -
cadtamas
tag
Sziasztok.
Az osztályoknál tartok és ismét sikerült elakadni.
Tudom, hogy mi a probléma, de nem tudom miként lehet megoldani."A feladat az, hogy a tkinter Frame()-osztályából kell leszármaztatni az Application osztályt, aminek a constructora egy 400x400-as vásznat hoz létre és 2 gombot. A vásznon a Visage osztály egy objektumát fogjuk létrehozni..."
from tkinter import*
def circle(can,x,y,r,color="white"):
"A <can> vásznon egy <r> sugarú kör rajza <x,y>-ban."
can.create_oval(x-r,y-r,x+r,y+r,outline=color)
class Application(Frame):
def __init__(self,boss=None):
Frame.__init__(self) #szülőosztály constructor
#Példány attribútomok inicializálása:
self.canv=Canvas(height=400,width=400)
self.canv.pack(side=TOP,padx=5,pady=5)
Visage(self.canv)
Button(self,text="Open", command=self.open).pack()
Button(self,text="Close", command=self.shout).pack()
def shout(self):
Visage.mouth=self.canv.create_line(170,270,230,270,fill='black')
def open(self):
Visage.mouth=circle(self.canv,200,270,30,color="black")
class Visage:
"""Arc rajzoló osztály"""
def __init__(self,canv_):
self.canv=canv_
circle(canv_,200,200,150,color="black") #fej
circle(canv_,160,160,30,color="black") #bal szem
circle(canv_,160,160,10,color="black")
circle(canv_,240,160,30,color="black") #jobb szem
circle(canv_,240,160,10,color="black")
circle(canv_,200,200,20,color="black") #orr
self.mouth=0 #száj
app=Application()
app.mainloop()Nem jelennek meg a gombok (Eddig egy Tk objektum kellett hozzá, de most nem tudom hogyan hozzam létre).
-
cousin333
addikt
Természetesen Windowsra is elérhető a pip. Tulajdonképpen van valamilyen jelentősége annak, hogy a 3.3-at használod, vagy csak ezt találtad meg? A 3.4-től kezdve ugyanis a pip a gyári Python telepítő része.
Ha pedig nincs fenn, akkor így tudod feltenni: [link]. Mindenképpen érdemes, mert a segítségével sokkal egyszerűbben és kényelmesebben tudsz új modulokat telepíteni. Kezeli a pontos verziót és az esetleges függőségeket is.
Ahogy nézem az urllib2 a Python 2 telepítés része (gyári modul), így használata semmiképpen sem javasolt. A Python 3-ban ehelyett van a már linkelt urllib, illetve annak almoduljai. Ezen kívül javasolják még a Request modult, mint az életedet megkönnyítő kiegészítőt, ami gondolom az urllib fölé épül.
A Request-et - csakúgy, mint a linkelt Home Assistant könyvtárat (pyHS100) -, könnyen felteheted a pip-pel, mivel mindkettő része a PyPi-nek (Python Package Index):
c:\> pip install request pyhs100
-
Bazs87
tag
válasz
cousin333
#939
üzenetére
köszönöm a válaszod!
Python kód: azért nem másoltam be ide python kódot, mert nem találtam olyan mintát ami hiba nélkül lefordul. Nem szerettem volna 30 gagyi kódot bemásolni ide. Valszeg a lib telepítése az oka, aminek egyenlőre nem tudom megfelelően a menetét.
Az urllib2 és a [link] Home assitant libet próbáltam eddig felrakni.
Annyit csináltam, hogy letöltöttem a lib mappáját, majd kicsomagolás kattintottam a setup.py-re. Ez ugye nem jött be. (egy további libben már ott elakadtam, hogy setuptools-t kér, amit szintén nem lehet exevel telepiteni, csak python ver 2.7-ig)
Utána bemásoltm a gyökérbe ("C:\Python33") az egész lib mappán, katt, de ott sem. Amikor a setupot IDLE-ből meghívva futtattam akkor sem akarta a jót, de legalább már hibát kiírt.A pipet láttam már raspis használatban, de winen szeretnék dolgozni.
Valszeg alap dolog amit nem tudom, rá is kerestem a helyes setupleírásra, de nem segített, a libekben pedig a readme-ben sincs leírva.
Gyakorlatilag annyit szeretnék elérni, hogy pár működő vbs kódomat áthajítsam python környezetbe. (http post, webről *.xml/html letöltése, + egy home assistance vezérlőlib meghívása)
Esetleg tudnál nekem linkelni v írni egy rövid bemutatást mit és hogyan kell a python 3.3 alá feltuszkolni? Videókat is csak 2.7-hez találtam sajnos.
-
cousin333
addikt
Leírhattad volna a Python kódodat is. Milyen könyvtárat akartál feltenni és hogyan? Én a pip-et javaslom erre a célra (csomagtelepítésre), sokkal egyszerűbb és a megfelelő verzió megy fel. Pl. a parancssorba írva:
C:\>pip install numpy pandas matplotlib
A webes felhasználásban nem vagyok otthon, de szerintem a gyári urllib amit te keresel, pontosabban annak a request és parse moduljai.
-
Bazs87
tag
Sziasztok!
Új vagyok még itt és egy elvileg banális kérdéssel szeretnélek röviden megzavarni titeket:
VBS kód:
data1 = 0
data2 = 0
tmp = HTTPPost("https://api.thingspeak.com/update","api_key=abcx&field1=" + cstr(data1) + "&field2=" + cstr(data2))
Function HTTPPost(sUrl, sRequest)
set oHTTP = CreateObject("Microsoft.XMLHTTP")
oHTTP.open "POST", sUrl,false
oHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
oHTTP.setRequestHeader "Content-Length", Len(sRequest)
oHTTP.send sRequest
HTTPPost = oHTTP.responseText
End Functionezt szeretném átülteni 1 az 1ben python3.3-ba. A gond, hogy már a google találatok első 2 oldalán végigmentem, de már a libek telepítésekor is hibák tömkelegét jelzi a python. Kell erre lennie valami egyszerű megoldásnak. (a http get csonk nélkül ment 2 perc alatt)
Lehet, hogy a lib installját rontom el, csak meghívom az install.py-t, ami nem is jelez hibát, csak utána a mintaprog lefutása.
Lib nélkül v gyári libbel még jobb lenne ugye.
Köszönöm előre is!
Bazs87 -
cousin333
addikt
Van egy sztringem (pl. "X1") és abból szeretnék egy 1 elemű listát (pontosabban iterable-t). Azaz keresem a magic nevű metódust/megoldást, ami tudja az alábbit:
>>> input = "X1"
>>> magic(input)
["X1"]Eddig nem vészes. Ugyanakkor azt is szeretném, ha a magic akkor is működne, ha az input már eleve egy lista, ilyenkor viszont ne variáljon rajta semmit:
>>> input = ["X1", "X2", "X3"]
>>> magic(input)
["X1", "X2", "X3"]Nyers erővel nyilván megoldható lenne, de nekem az volna a kérdésem, hogy mi erre a "legpythonikusabb" (legelegánsabb, legegyszerűbb) megoldás? Egyáltalán létezik ilyen? Vagy éppen ellenkezőleg, túlságosan triviálisat kérdeztem?

-
EQMontoya
veterán
válasz
cousin333
#933
üzenetére
Hát ha utóbbit akarsz csinálni, arra van ugye enumerate meg ilyesmi.

Egyébként mostanság olvastam elég sok python kódot, és az az érzésem, hogy a legtöbben C-t írnak, csak nem annyira típusos, és python interpreterrel futtatják. Mindent, ami megvan egyébként a nyelvben a for ciklusok elkerülésére (map, filter, reduce, any, all, stb), azt szépen megírják kézzel.
-
cousin333
addikt
"Sosem szerettem a for ciklust kombinálva a range függvénnyel"
Semmi gond, a Python sem szereti annyira.
Inkább a listaelemeken való iterálást preferálja. Pl.:lista = ['egy', 'ketto', 'harom']
for elem in lista:
print(elem)Ez szükség esetén megfejelhető az enumerate és a zip használatával, valamint a lista "szeletésével":
for elem in lista[1:]:
print(elem)Az persze megint egy más kérdés, hogy akkor hogyan lehetne "pythonikusan" leimplementálni a fenti példát...
-
Lacc
aktív tag
válasz
LilProphet90
#930
üzenetére
Az alapokhoz a Coursera-s kurzusok is jók, amelyek ingyenesek (akár csak a Microsoft kurzusai pythonban amik szintén ingyenesek), de ha tényleg érdekel a NumPy, BigData és egyéb finomságok, akkor ismertető kurzusnak tökéletes. Ezt ezért gondolom így, mert a NumPy-os rész benne csak 25perc, ami szerintem igazán kevés. Bár a webes python oktató anyagok lehet hogy tényleg jók.
(Szerintem bárki lehet Udemy-s oktatók és ez néha érződött is az előadásokon - vagy amik ingyenesek voltak - nekem nem vált be, de lehet neked igen. Nekem csak azért nem mert én alapból fejlesztek napi szinten)
-
Lacc
aktív tag
válasz
cousin333
#928
üzenetére
Igen, eszembe jutott nekem is, hogy a matematikai indexelés 1-től az infós meg 0-tól kezdődik.
Igen, annyira nem érdekel a python, inkább ruby-t preferálom helyette.
Sosem szerettem a for ciklust kombinálva a range függvényyel, jobb szeretem a C féle for ciklust, ott mindig tudom állítani, hogy < vagy <= legyen.axioma. Köszi a segítséget.
-
LilProphet90
senior tag
Sziasztok! Az Udemy Python kurzusa most igen kedvező áron van, abszolút kezdő vagyok, a kérdésem, hogy ismeritek-e, és mennyire érdemes belevágni? Vagy esetleg inkább a már első posztban (is) linkelt anyagok valamelyikét ajánljátok? Köszi!
-
axioma
veterán
KPM, de regen volt!
Egyebkent jo kerdes, hogy mi a celod, a pszeudokod pontos atirata, vagy az elofeldolgozas megertese.
Az indexek javitasaval (range(1,m) es k+1 helyett k) jol fog mukodni az algo (persze az a-ban is elcsuszva lesznek az ertekek a 0-tol szamozas miatt! marmint a vart eredmenyt adja az a mint teljes tomb; de ami a pszeudokod-ban a[2], az nalad az a[1], ez fontos lesz ha a masik felet is implementalod)
P=list(pattern) tok folosleges. -
cousin333
addikt
Nekem ehhez már késő van, de első ránézésre 2 dolgon úszhatott el a kódod:
- indexelés: ha jól látom a példában az a[1] a legelső elemet jelenti, Pythonban viszont ez az a[0] Nem mondom, hogy emiatt rossz, csak erre oda kell figyelni
- Python ismeret hiánya: a pszeudo-kódban a ciklus egyértelműen 2-től m-ig megy, viszont a használtrangefüggvény 2-től (m-1)-ig fut csak!Erre utal az is, hogy a te eredményed látszólag eggyel elcsúszott a helyes megoldáshoz képest. Talán inkább range(1, m) kellene, de persze ez nem feltétlenül oldja meg a problémádat.
-
Lacc
aktív tag
Sziasztok!
Egy algoritmust implementáltam pythonban, de nem azt adja ki megoldásban, mint ami a pdf szerepel.
Meg tudná nekem valaki nézni, hogy mit hol ronthatam el? Lehet erősen félreértelmeztem a pseudo kódot.def pi_prefix_fuggveny(pattern):
P = list(pattern)
m = len(P)
a = [0] * m
k = 0
for q in range(2, m):
while k > 0 and P[k+1] != P[q]:
k = a[k]
if P[k+1] == P[q]:
k = k + 1
a[q] = k
return a
print pi_prefix_fuggveny("ababaca")Nekem ez a megoldás jön ki:
[0, 0, 0, 1, 2, 0, 0]
Mi közben ez lenne a jó megoldás
[0, 0, 1, 2, 3, 1, 1]Ez pedig itt a link, a 7. dián van a pseudo code-os leírás
-
cadtamas
tag
Üdv, ismét elakadtam.
Van egy programom, ami egy elektromos ellenállásra rajzolja ki a megfelelő színkódokat.
Gerard Swinnen 13.4. feladat
Az lenne a feladat, hogy miután beütöm az ellenállás értékét, ne gombhoz legyen rendelve a csíkok átszínezése, hanem csak simán az <enter> gomb lenyomásával működjön.
Beleírtam amit elvileg kell, de a következő hibát írja ki:
"TypeError: changeColours() takes 1 positional argument but 2 were given"Tudna valaki segíteni, hogy mit rontottam el?
from tkinter import*
from math import log,log10
class Application:
def __init__(self):
"""A főablak constructora"""
self.root=Tk()
self.root.title('Színkódok')
self.drawResistor()
Label(self.root,text="Írja be az ellenállás értékét ohm-ban: ").grid(row=2)
from tkinter import*
from math import log,log10
class Application:
def __init__(self):
"""A főablak constructora"""
self.root=Tk()
self.root.title('Színkódok')
self.drawResistor()
Label(self.root,text="Írja be az ellenállás értékét ohm-ban: ").grid(row=2)
#Button(self.root, text='Mutat', command=self.changeColours).grid(row=3,sticky=W) #Korábban ezzel működött
self.entry=Entry(self.root,width=14)
self.entry.bind("<Return>",self.changeColours) #Ezt írtam csak bele
self.entry.grid(row=3)
#színkódok:
self.cc=['black','brown','red','orange','yellow','green','blue','purple','grey','white']
self.root.mainloop()
def drawResistor(self):
"""Vászon ellenállás modellel, amin három színes csík van"""
self.can=Canvas(self.root,width=500,height=200,bg='light blue')
self.can.grid(row=1,pady=5,padx=5)
self.can.create_line(10,100,490,100,width=3)
self.can.create_rectangle(130,60,360,140,fill='beige',width=2)
#három színes csík (feketék alapból)
self.line=[] #listában tároljuk őket
for x in range(150,250,48):
self.line.append(self.can.create_rectangle(x,60,x+30,140,fill='black',width=0))
def changeColours(self):
"""A beírt értéknek megfelelő három szín kiiratása"""
self.v1ch=self.entry.get() #A get() metódus egy stringet ad vissza (ez a bekért adat)
try:
v=float(self.v1ch) #Ha sima float értéket írtunk be akkor ezzel működik
except:
err=1 #Nem numerikus adat
else:
err=0
if err==1 or v>1e11:
self.reportError() #Nem megfelelő érték
elif v<10:
li=[0]*3
li[1]=int(v+.5)
li[2]=int((v-int(v))*10+.5)
for n in range (3):
self.can.itemconfigure(self.line[n],fill=self.cc[li[n]])
else:
li=[0]*3
logv=int(log10(v)) #logaritmus egész része
ordgr=10**logv #nagyságrend
li[0]=int(v/ordgr) #egész rész
decim=v/ordgr-li[0] #tizedes rész
li[1]=int(decim*10+.5) #+0.5 a korrekt kerekítéshez
li[2]=logv-1
#a 3. szakasz színezése:
for n in range (3):
self.can.itemconfigure(self.line[n],fill=self.cc[li[n]])
def reportError(self):
self.entry.configure(bg='red') #mező hátterének színe
self.root.after(1000,self.emptyEntry) #1 sec után törölni
def emptyEntry(self):
self.entry.configure(bg='white') #fehér háttér vissza
self.entry.delete(0, len(self.v1ch)) #karakterek törlése
####Főprogram###
f=Application() -
Damateo
aktív tag
Sziasztok,
Kicsit magamról.
Jelenleg munka mellet rendszergazda iskolát végzek.
Van egy alap webfejlesztő iskolám, statikus oldalakat tudok készíteni (HTML+CSS).
Ezt a tudásom szeretném bővíteni, hogy dinamikus oldalakat is tudjak alkotni.
Tudom hogy általában ehhez a php társul.
Szeretnék olyan nyelvet tanulni ami több helyzetben is megállja helyét.
Szerintetek jelenlegi tudásom bővítésére alkalmas a Python?Válaszotokat köszönöm.
-
pvt.peter
őstag
Sziasztok,
Egy olyan programot keresek, ami kiirja azt, hogy egy adott futtathato allomany, milyen fajlmuveleteket hajtott vegre.
Egesz konkretan arra lennek kivancsi, hogy egy adott *.exe fajl milyen tovabbi fajlokat hoz letre az altala meghivott *.dll fajl segitsegevel.Elore is koszonom a segitseget.
-
-
szucstom
őstag
Lehet, hogy most totál hülyeséget fogok kérdezni, de Pythonban lehet szerverautomatizáláshoz programokat írni?
(félreértés ne essék, nem pont ezért kezdtem bele, azt hallottam, hogy ezzel - is - lehet könnyen programozást tanulni).
Ha ez igaz, akkor nekem csak bónusz lenne a rendszergizda papír mellé
-
EQMontoya
veterán
válasz
cousin333
#906
üzenetére
Az angol nem para, köszönöm a tippeket!
Igazság szerint programozni egyetemen tanultam, főleg C-t, C++, kis Java, C#, basht már magamtól, aztán utána Python, JS már ment tutorial alapján is, mert sok mást láttam. Szóval halvány fogalmam sincs, hogy milyen egy kezdőnek ajánlható könyv, sosem tanultam könyvből programozni. -
szucstom
őstag
válasz
cousin333
#906
üzenetére
én igaz totál kezdő vagyok, de azt mondom, igazad van. Egyetlen nagy hátrány, hogy én még most tanulom komolyabban az angolt (bár ugye kockulás és eredeti nyelven való filmnézés miatt elég sok ragadt rám), így ha nem is tudok mindent teljesen szó szerint lefordítani, de nagyjából talán megértem a leírásokat.
-
cousin333
addikt
válasz
EQMontoya
#904
üzenetére
Ez egy nem triviális kérdés, hiszen mindenkinek mások az előismeretei, képességei és gondolkodásmenete, de szerintem a Think Python (PDF) egy ilyen kezdő-barát könyv, mert érhetően, egyszerű szavakkal, tömören elmagyarázza a programozás alapjait is. Egyébként ebből a szempontból a Swinnen könyv is ajánlható, sőt, összehasonlítva meglepően sok az egyezés a két forrás között...
Ami nekem a Swinnen könyvben nem tetszik - és amit már többször is jeleztem -, hogy elavult: 2005-ben adták ki, ami a Python 2.4 ideje... a 3-ast nem említi, hiszen az akkor még nem is létezett. Sok minden most is érvényes, más dolgok viszont megváltoztak, kibővültek azóta, akár az alap dolgokat tekintve is. Csak néhány példa:
- print: statement vs függvény
- egész osztás
- xrange vs range (izip vs zip... stb)
- sztring vs byteSzerintem ha valaki most ismerkedik vele, az egyből a 3-assal kezdjen és ne tanulja meg feleslegesen (es adott esetben hibásan) a 2-est, csak majd jóval később, ha szüksége lesz rá (ha szüksége lesz rá).
Hozzáteszem: magyar nyelven még mindig nem nagyon van alternatívája a Swinner könyvnek.
-
cadtamas
tag
válasz
szucstom
#900
üzenetére
Ha a Gerard Swinnen könyvet használod, akkor ne tedd félre.
Az egyik legösszeszedettebb, legjobb könyv rengeteg példával és feladattal.
Kb. a felénél járok és én is 3.6-ot használok, de 1-2 ilyen parancstól eltekintve tökéletesen használható.
Ezekre meg könnyű rákeresni, hogy miért vannak.(Sokáig nem tudtam, de rengeteg feladat ki van dolgozva a könyv utolsó részében

Új hozzászólás Aktív témák
- Az 5 legnagyobb bénázás a mobilpiacon idén
- Luck Dragon: Asszociációs játék. :)
- Külföldi prepaid SIM-ek itthon
- Milyen TV-t vegyek?
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Vírusirtó topic
- Világ Ninjái és Kódfejtői, egyesüljetek!
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Amlogic S905, S912 processzoros készülékek
- Trollok komolyan
- További 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
- HIBÁTLAN iPhone 13 Pro 128GB Alpine Green -1 ÉV GARANCIA - Kártyafüggetlen, MS2978
- HIBÁTLAN iPhone 15 Pro Max 256GB Blue Titanium -1 ÉV GARANCIA -Kártyafüggetlen
- AZONNALI SZÁLLÍTÁS Eredeti Microsoft Office 2019 Professional Plus
- 155 - Lenovo LOQ (15IRH8) - Intel Core i5-13505H, RTX 4060
- Tablet felvásárlás! Samsung Galaxy Tab S10+, Samsung Galaxy Tab S10 Ultra, Samsung Galaxy Tab S10 FE
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest

. Plusz kell hozzá még egy sor:





