Forum » Programiranje » Python
Python
salcadoo ::
Kako se naredi, da se spodnja koda izvede npr. 500x oz. v dokler ne prekines s klikom na tipkovnici? Vsakic ko med cakanjem na pritisk gumba na protoboardu (v kodi definiran kot LED) mi na zaslonu ostane slika kamere, nato moram ugasniti Raspberry Pi in ga ponovno zagnati (poteg kabla iz micro usb porta). hvala
from picamera import PiCamera
from time import sleep
from gpiozero import Button
from gpiozero import LED
while 1:
button = Button(14)
camera = PiCamera()
led = LED(15)
camera.start_preview()
button.wait_for_press()
for i in range(1,5):
camera.rotation = 180
camera.start_preview()
led.on()
sleep(1)
camera.capture('image{}.jpg'.format(i))
led.off()
camera.stop_preview()
from picamera import PiCamera
from time import sleep
from gpiozero import Button
from gpiozero import LED
while 1:
button = Button(14)
camera = PiCamera()
led = LED(15)
camera.start_preview()
button.wait_for_press()
for i in range(1,5):
camera.rotation = 180
camera.start_preview()
led.on()
sleep(1)
camera.capture('image{}.jpg'.format(i))
led.off()
camera.stop_preview()
I am reading book on anti-gravity. I can't put it down.
- premaknil iz Pomoč in nasveti: bluefish ()
black ice ::
Preberi si osnove Pythona. Namig: uporabi zanko (loop).
Zgodovina sprememb…
- predlagalo izbris: salcadoo ()
NejcSSD ::
for i in range(500):
#kar je tukaj se izvede 500krat
ALI
i = 0
while i < 500:
#kar je tukaj se izvede 500krat
i=i+1
#kar je tukaj se izvede 500krat
ALI
i = 0
while i < 500:
#kar je tukaj se izvede 500krat
i=i+1
PC : MAG B550 Tomahawk, Ryzen 5600X, 32Gb 3200Mhz CL16, 2x 1TB NVME, MSI 1070Ti
A110 ::
Imam problem. V zelo veliko zelo dolgih seznamih različnih dolzin se želim sprehoditi po parih elementov, predhodniku in nasledniku. Torej če imam seznam [a,b,c,d] bi rad najprej dostopamo do a,b potem b,c potem pa c,d. Do zdaj sem to imel narejeno tako da sem najprej izračunal dolžino seznama potem pa se sprehodil po seznamu v dolzina-1 korakih in vsakič izbral i ti in i+1 ti element. Ampak sumim da predolgo traja da izračuna vsakič dolžino seznama posebej in me zanima če obstaja kak hitrejši način kako se sprehoditi po seznamu
HotBurek ::
Zakaj pa računaš dolžino seznama?
Spodnji semple:
Output:
Spodnji semple:
lines = "test1\ntest2\ntest3\ntest4\ntest5\ntest6\ntest7\ntest8\ntest9\ntest10\ntest11\ntest12\n"; items = lines.split("\n"); max_num_len = len(str(len(items))); for i in range(0, len(items) - 2): print(str(i + 1).zfill(max_num_len) + " | " + str(items[i]) + " | " + str(items[i + 1]));
Output:
01 | test1 | test2 02 | test2 | test3 03 | test3 | test4 04 | test4 | test5 05 | test5 | test6 06 | test6 | test7 07 | test7 | test8 08 | test8 | test9 09 | test9 | test10 10 | test10 | test11 11 | test11 | test12
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window
Zgodovina sprememb…
- spremenilo: HotBurek ()
kuall ::
Imam problem. V zelo veliko zelo dolgih seznamih različnih dolzin se želim sprehoditi po parih elementov, predhodniku in nasledniku. Torej če imam seznam [a,b,c,d] bi rad najprej dostopamo do a,b potem b,c potem pa c,d. Do zdaj sem to imel narejeno tako da sem najprej izračunal dolžino seznama potem pa se sprehodil po seznamu v dolzina-1 korakih in vsakič izbral i ti in i+1 ti element. Ampak sumim da predolgo traja da izračuna vsakič dolžino seznama posebej in me zanima če obstaja kak hitrejši način kako se sprehoditi po seznamu
Compiler je zelo verjetno tako optimiziran, da ne računa vsakič znova dolžine seznama v for loopu, tako da tvoj način je ok. Če hočeš bit vseeno 100% najprej shrani dolžino v neko novo spremenljivko. Itak pa računanje dolžine ni potratno, saj je po moje ta info shranjen v neki privatni spremeljivki objekta. Ni kot da mora it vsakič čez vse elemente. To naredi samo strlen() v C ju pol se pa že počasi neha po moje.
Zgodovina sprememb…
- spremenilo: kuall ()
Randomness ::
Torej če imam seznam [a,b,c,d] bi rad najprej dostopamo do a,b potem b,c potem pa c,d.V Pythonu se to elegantno naredi z zipom, npr.:
xs = [1, 2, 3, 4, 5] ys = [x for x in zip(xs, xs[1:])] for p in ys: print(p)
Compiler je zelo verjetno tako optimiziranKateri compiler? Python (vsaj v referenčni implementaciji) nič kaj dosti ne optimizira kode, več ali manj jo samo "prepiše" v bytekodo, ki jo potem interpretira.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [python] project euler problemOddelek: Programiranje | 1283 (835) | Spura |
» | Python - pomoč (strani: 1 2 3 )Oddelek: Programiranje | 18047 (8795) | black ice |
» | [Python] Domači nalogiOddelek: Programiranje | 3061 (1951) | ragezor |
» | urejanje - pythonOddelek: Programiranje | 1359 (1136) | ktka |
» | arrayList, razred chainOddelek: Programiranje | 1078 (1002) | ERGY |