» »

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()
I am reading book on anti-gravity. I can't put it down.

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
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:

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

Zgodovina sprememb…

  • spremenilo: HotBurek ()

kuall ::

A110 je izjavil:

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 optimiziran
Kateri 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 ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[python] project euler problem

Oddelek: Programiranje
151283 (835) Spura
»

Python - pomoč (strani: 1 2 3 )

Oddelek: Programiranje
10318047 (8795) black ice
»

[Python] Domači nalogi

Oddelek: Programiranje
333061 (1951) ragezor
»

urejanje - python

Oddelek: Programiranje
51359 (1136) ktka
»

arrayList, razred chain

Oddelek: Programiranje
51078 (1002) ERGY

Več podobnih tem