abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 20:11 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. V Týdnu v GNOME je zmíněn flatpak balíček pro GIMP 0.54.1 z roku 1996. Jedná se o poslední verzi GIMPu postavenou nad toolkitem Motif.

    Ladislav Hagara | Komentářů: 0
    včera 19:11 | Nová verze

    Home Assistant Operating System, tj. linuxová distribuce optimalizována pro hostování Home Assistanta a jeho aplikací, byl vydán v nové major verzi 18.0.

    Ladislav Hagara | Komentářů: 0
    včera 18:11 | Komunita

    Po šestiletém úsilí byla z jádra Linux odstraněna funkce strncpy(). Všechna předchozí volání této funkce byla převedena na bezpečnější alternativy.

    Ladislav Hagara | Komentářů: 1
    včera 17:22 | Nová verze

    Byla vydána nová verze 261 správce systému a služeb systemd (Wikipedie, GitHub). Z novinek lze vypíchnout nový subsystém IMDS (Cloud "Instance Metadata Service"), nový příkaz storagectl nebo novou komponentu systemd-sysinstall.

    Ladislav Hagara | Komentářů: 2
    včera 12:00 | Nová verze

    Vývojové prostředí Qt Creator bylo vydáno ve verzi 20 (seznam změn). Novinky zahrnují hlavně rozšíření pro integraci LLM agentů nebo minimalistický editační režim uživatelského rozhraní („zen mode“).

    |🇵🇸 | Komentářů: 0
    19.6. 10:22 | Humor

    Už jste se prolétli na webu Google Earth? Přibyl tam Simulátor letu (Nástroje / Simulátor letu). Funguje i bez účtu Google [𝕏].

    Ladislav Hagara | Komentářů: 0
    19.6. 09:55 | Nová verze

    Byla vydána nová verze 4.7 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 3
    18.6. 13:33 | Nová verze

    Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.6. Přehled novinek s náhledy v oznámení na blogu.

    Ladislav Hagara | Komentářů: 0
    18.6. 12:44 | IT novinky

    V Edici CZ.NIC, knižní řady správce české národní domény, vychází nová kniha Martina Malého Kódy, buildy, firmwary. Autor po půl roce od vydání předchozího titulu přichází se svou již sedmou knihou, tentokrát zaměřenou na vývoj programového vybavení pro embedded zařízení. Publikace s podtitulem Základy vývojářského řemesla pro tvůrce hobby elektroniky nabízí praktického průvodce pro všechny, kdo své projekty vytvořené s Arduinem

    … více »
    Ladislav Hagara | Komentářů: 0
    18.6. 11:44 | Komunita

    V Brně na FIT VUT probíhá dvoudenní open source komunitní konference DevConf.CZ 2026. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1949 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: split() a proměnné - Python

    pdp7 avatar 21.3.2025 17:55 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    split() a proměnné - Python
    Přečteno: 2714×
    Ahoj mám string:
    G02X9Y6A5
    jak z toho vypárat 9, 6, 5 a uložit to do 3 proměnných zvlášť jako floaty?
    X = radek.split("Y")[0]
    Y = radek.split("Y")[1]
    Z = radek.split("Y")[2]
    funguje jenom pro tento případ stringu G02X9Y6Y5. Jakmile je tam nějaký další oddělovač jako zrovna to A tak jsem řiti. Pokud použiju re.split tak ten mi zase vypíše jen list který mi nejde dál dělit, píše mi to, že list nemá atribut split.

    Odpovědi

    pdp7 avatar 21.3.2025 20:44 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: split() a proměnné - Python
    with open("oblouky.txt") as f:
        for arc in f:
            if 'G02' in arc:
                radius = float(arc.split("A")[1])
                souradnice = arc.split("A")[0]
                GX = souradnice.split("Y")[0]
                X = float(GX[4:])
                Y = float(souradnice.split("Y")[1])
                print(X, Y, radius)
    21.3.2025 21:01 Bugsa
    Rozbalit Rozbalit vše Re: split() a proměnné - Python
    Pokud použiju re.split tak ten mi zase vypíše jen list který mi nejde dál dělit, píše mi to, že list nemá atribut split.
    No tak v cyklu projeď položky toho listu ze splitu a ty pak splitni. Obávám se ale, že tvůj "parser" bude k ničemu s tímto přístupem k programování. Co to je za vstupní stringy? Nějaký CAD? Nebo G-CODE k CNC nebo 3D tisku?
    pdp7 avatar 21.3.2025 21:17 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: split() a proměnné - Python
    No nepochybně ten přístup je uplně jeblý (nejsem zrovna programátor). Zatím mám funkční parser který čte excellon a převádí na gcode (protože nemám přístup k industriálním strojům k obrábění plošných spojů), mám přístup jen k normální bězné fréze. Ovšem soft kde se dá panelizovat DPS tvořit cesty nástrojem atd. obyčejně zas generuje jenom ten excellon a jak ho mám na té obyč fréze pustit, když ona tomu nehoví. Za tím účelem jsem si napsal takový prasecký parser který funguje. Zatím jen s G00 a G01 příkazy. Nějak to rozšiřuji chci tam přidat podporu pro G02, G03 (oblouky) který tam dopočítává offsety I, J protože ta fréza to vyžaduje. V excellonu se zas definuje jen poloměr oblouku a moje prasečina to tam dopočítává :D
    22.3.2025 13:54 mikrom
    Rozbalit Rozbalit vše Re: split() a proměnné - Python
    import re
    
    inp_str = "G02X9Y6A5"
    
    (x, y, a) = re.split(r"[XYA]", inp_str[3:])[1:]
    
    print(f"x = {float(x)}, y = {float(y)}, a = {float(a)}")
    # x = 9.0, y = 6.0, a = 5.0
    
    23.3.2025 17:11 Ja
    Rozbalit Rozbalit vše Re: split() a proměnné - Python
    import re
    
    sample = 'G02X9Y6A5'
    
    # základ z regulárních výrazů:
    # ^G02 = začátek bude G02
    # X(?P<x>\d[.\d]*) = první část bude začínat X a následovat bude číslice a číslice nebo tečka a pojmenujeme to x
    # Y(?P<y>\d[.\d]*) = viz předchozí, jen to začíná Y a jmenuje se to y
    # A(?P<radius>\d[.\d]*) = viz přžedchozí, jen to začíná A a jmenuje se to radius
    # $ = tím zkoumaný řetězec končí
    
    # dalo by se to napsat obecněji, ale neznám formát dalších řetězců, které by třeba bylo rozebírat
    
    r_g02 = re.compile(r'^G02X(?P<x>\d[.\d]*)Y(?P<y>\d[.\d]*)A(?P<radius>\d[.\d]*)$')
    
    matched = r_g02.match(sample)
    if matched:
        x = float(matched.group('x'))
        y = float(matched.group('y'))
        radius = float(matched.group('radius'))
        print(x, y , radius)
    else:
        print("Vstup není oblouk!")
    

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.