Python programozás - Szoftverfejlesztés fórum

üzenetek

hozzászólások


Siriusb
(veterán)

Ismét előszedtem python barátunkat. :) Rögtön van is egy kérdésem: datetime.date esetén a 3 argumentumot nem lehet list, tuple vagy valamilyen értelmes formában megadni? Annyira bántja a szemem így:
datetime.date(datum[0], datum[1], datum[2])


RedAnt
(aktív tag)
Blog

datetime.date(*datum)
[link]

[ Szerkesztve ]


Siriusb
(veterán)

És tényleg. Jobb lenne átnéznem újra az alapokat. :)
Köszönöm!


shinodas
(tag)

Sziasztok srácok!

Multiprocessing mudollal csinálok egy másik processt, amiben szeretném használni a soros portot. Viszont, ha ott használom, akkor a következő hibaüzenet fogad:
AttributeError: 'Serial' object has no attribute '_isOpen'

def getData(conn):
USB = conn.recv()
while True:
print USB.readline()
time.sleep(1)
return

...

parent2,child2=Pipe()
currTEMP=Process(target=getTEMP, args=(child2,))
currTEMP.start()
parent2.send(USB)

[ Szerkesztve ]


suomalainen
(tag)

Sziasztok!

Tudnátok segíteni? Elakadtam és nem tudom a megoldást. A lényeg: egy lista elemei közül random módon kellene megjeleníteni egy elemet és kiíratni egy ablakba.
Összehoztam ezt a szánalmat:
from tkinter import *
import random
def kemia():
items = ["Hidrogén H2", "Víz H2O", "Klór Cl2", "Sósav HCl"]
rand_item = items[random.randrange(len(items))]
print (rand_item)
abl1 = Tk()
can1 = Canvas(abl1,bg="dark grey", height=100, width=150, command=kemia)
can1.pack(side=LEFT)
gomb1 = Button(abl1, text= "Random", command=kemia)
gomb1.pack(side=BOTTOM)
gomb2 = Button(abl1, text= "Kilép", command = abl1.destroy)
gomb2.pack()
abl1.mainloop()

Annyi a gond vele, hogy nem egy ablakban jelenik meg az érték, hanem CLI-ban.

Előre is köszi!


Siriusb
(veterán)

A print (rand_item) valóban csak a terminálba ír. Az entry widgetet kellene használnod. Az az egyszerűség benne, hogy egy speciális változóba rakod az értékét, amit megjelenítenél, s ha az változik, a grafikus felületen is változik az entry tartalma.

Tutorial: [link]


SimiZi
(újonc)

Hali !

Olyan kérdésem lenne, hogy mi a kezdő definiálás 64bitre ?

import win32api
import sys
import pythoncom, pyHook

gondolom nem win64api és a társai..

Aki esetleg tudna segíteni, kifejezetten hálás lennék érte.


sonar
(addikt)
Blog

Hi,

Használta vki a BOA Constructor-t?
A debugger funkciót nem birom benne beizzitani.

Illetve létezik vmi jó debugger linux alá?
Win alatt a visual studio + ironpython elég használható, csak hát az win.


olivera88
(veterán)

Az megoldható h valahogy hogy egy Python programot magától tudjak futtatni, ne kelljen beírni a terminálba a fájl nevét? Egy meteorológiai programhoz használok Python scripteket amiket a terminálban kell lefuttatni.
Így néz ki. [link]


sonar
(addikt)
Blog

Hogy érted, hogy magától? klikkelésre?


olivera88
(veterán)

Igen. Meg az is érdekelne h lehetne többet egymás után futtatni automatikusan h ne kelljen külön külön.

[ Szerkesztve ]


sonar
(addikt)
Blog

Terminálból gondolom, hogy linux alatt akarod futtatni.
Akkor ez legyen az első sorban
#!/usr/bin/python
és ellenőrizd, hogy van-e futtatási jogosultság a file-ra, ha nincs akkor [sudo]chmod +x fileneve


olivera88
(veterán)

Igen ott. Hol? A Kódba? És azt hol lehet ellenőrözni? Van itt egy olyan opció h a fájl végrehajtásának engedélyezése programként. Ez?

[ Szerkesztve ]


sonar
(addikt)
Blog

Hát magyarul nem tudom, hogyan van, de sanszos, hogy az.

ellenőrizni meg legegyszerübben terminálban tudod.
ls -all fileneve és vmi ilyesmit kell kapnod:
sonar@samr0221 ~/Documents $ ls -all preciphu_18.py
-rwxr-xr-x 1 sonar sonar 2529 May 28 22:38 preciphu_18.py

A lényeg az 10 karakter (egész pontosan 2.-tól a 10.-ig jelzik a jogosultságokat és legyen benne x, mint eXecute). Ha mélyebben érdekel a téma akkor googli a barátod. [link]

[ Szerkesztve ]


olivera88
(veterán)

Na beírtam az első sor elé amit írtál. Most már lefut enterrel. :C Köszi. A jogosultságot nem tudtam úgy ellenőrizni ahogy írtad.
Azt nem lehet megoldani h egymás után lefuttatni automatikusan? Akkor még jobb lenne, ha megadom h miket futtasson le és azokat lefuttatja egymás után.

[ Szerkesztve ]


axioma
(veterán)

Az az alapesetu shell script, feltetel kb. ugyanez (az elso sorban a python helyett az aktualis, vagy hat a hasznalni akart shell neve legyen), a script meg utana a futtatandok felsorolasa soronkent.
jogosultsagokra pedig szukseged lesz, terminal ablak ls -l lathatova teszi, chmod valtoztatja, van help es manual is.
[Bar tuti van egyebkent ugyanezekre a feladatokra valami elcseszett grafikus megoldas is, de en oreg vagyok mar ahhoz, hogy ennyi gepelgetesecske helyett kattintgassak, szorcsolgessek...]


sonar
(addikt)
Blog

Ezt kicsit érthetőbben please.
Minden bizonnyal meg lehet oldani, csak amit leírtál az számomra nagyon nem tiszta


axioma
(veterán)

Bocs, en anno win 3.1 helyett karakteres uzemmodu linuxot hasznaltam nettel a koleszszobaban, ami akkor nagy szo volt, de ma mar nem szeretik az emberek a karaktereket...
Letrehozol egy tokegyszeru szovegfile-t, benne:
#!/usr/bin/bash
<elso python script-ed neve>
<masodik script>
...
EOF

Ennek ha pyscriptauto a neve, akkor
chmod 755 pyscriptauto
parancsot futtasd, es utana ./pyscriptauto (ha jol vagy konfigolva, akkor a ./ elmaradhat, de soxor az akt. kv.t nincs a keresesi utvonalon...)

Teszem hozza gyorsan, 10+ eve irtam ilyet utoljara, ugyhgoy csak azert valaszoltam mert senki mas, es siman tevedhetek.

[ Szerkesztve ]


olivera88
(veterán)

Nem tudom mit nem értettél rajta nem tudom. Van 11 időpont és arra 11 fájl, és azt szerettem volna megoldani h ne kelljen minden fájl nevét külön beírni a terminálba hanem egyszerre lebírjam futtatni mind a 11 et.

axioma

Szóval akkor ezt kell betenni a fájlba a mit leírtál? Ja semmi, nem figyeltem, :W külön fájlt kell létrehozni.

Közbe találtam rá megoldást.

[ Szerkesztve ]


olivera88
(veterán)

Létrehoztam ezt a fájlt. És lefuttattam, de nem történt semmi.

üzenetek