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í
×
    dnes 02:22 | Humor

    Bogdan Ionescu rozběhl webový server na jednorázové elektronické cigaretě.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána beta verze Ubuntu 25.10 s kódovým názvem Questing Quokka. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 25.10 mělo vyjít 9. října 2025.

    Ladislav Hagara | Komentářů: 0
    včera 12:55 | Nová verze

    Bola vydaná nová verzia 4.13 security platformy Wazuh. Prináša nový IT hygiene dashboard, hot reload dekodérov a pravidiel. Podrobnosti v poznámkách k vydaniu.

    peterm655 | Komentářů: 0
    včera 12:22 | IT novinky

    Americký výrobce čipů Nvidia investuje pět miliard dolarů (přes 100 miliard Kč) do konkurenta Intel, který se v poslední době potýká s vážnými problémy. Firmy to včera oznámily ve společné tiskové zprávě. Dohoda o investici zahrnuje spolupráci při vývoji čipů pro osobní počítače a datová centra. Akcie společnosti Intel na zprávu reagovaly výrazným růstem.

    Ladislav Hagara | Komentářů: 5
    včera 05:11 | Komunita

    Dlouholetý balíčkář KDE Jonathan Riddell končí. Jeho práci na KDE neon financovala firma Blue Systems, která ale končí (Clemens Tönnies, Jr., dědic jatek Tönnies Holding, ji už nebude sponzorovat), někteří vývojáři KDE se přesunuli k nově založené firmě Techpaladin. Pro Riddella se již nenašlo místo. Následovala debata o organizaci těchto firem, které zahraniční vývojáře nezaměstnávají, nýbrž najímají jako kontraktory (s příslušnými důsledky z pohledu pracovního práva).

    |🇵🇸 | Komentářů: 8
    včera 02:33 | Komunita

    V Amsterdamu probíhá Blender Conference 2025. Videozáznamy přednášek lze zhlédnout na YouTube. V úvodní keynote Ton Roosendaal oznámil, že k 1. lednu 2026 skončí jako chairman a CEO Blender Foundation. Tyto role převezme současný COO Blender Foundation Francesco Siddi.

    Ladislav Hagara | Komentářů: 0
    včera 02:22 | Zajímavý článek

    The Document Foundation, organizace zastřešující projekt LibreOffice a další aktivity, zveřejnila výroční zprávu za rok 2024.

    ZCR | Komentářů: 0
    18.9. 17:33 | Nová verze

    Byla vydána nová stabilní verze 7.6 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 140. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    18.9. 16:22 | Nová verze

    Byla vydána verze 1.90.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    18.9. 16:11 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (42%)
     (56%)
     (9%)
     (11%)
     (18%)
     (9%)
     (13%)
     (9%)
     (16%)
    Celkem 45 hlasů
     Komentářů: 7, poslední včera 23:32
    Rozcestník

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

    pdp7 avatar 21.3. 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: 1287×
    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. 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. 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. 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. 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. 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.