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 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ářů: 0
    dnes 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
    dnes 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
    včera 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
    včera 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
    včera 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
    včera 12:11 | Nová verze

    Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | IT novinky

    Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.

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

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 11
    17.9. 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (42%)
     (56%)
     (6%)
     (8%)
     (14%)
     (8%)
     (11%)
     (8%)
     (14%)
    Celkem 36 hlasů
     Komentářů: 5, poslední včera 22:30
    Rozcestník

    Dotaz: Spojit dva řádky do jednoho.

    17.4.2021 20:46 Arny
    Spojit dva řádky do jednoho.
    Přečteno: 939×
    Pěkný večer všem,

    chtěl bych v souboru s titulky (.srt, .vtt) spojit dva nebo x řádků na jeden řádek.
    VZOR:
    1
    00:00:41,501 --> 00:00:44,751
    Pokud máte vše pod kontrolou, 
    
    2
    00:00:45,042 --> 00:00:50,334
    nejedete dostatečně rychle.
    - Mario Andretti
    
    3
    00:01:22,042 --> 00:01:24,667
    Pokračuj, ale moc na to netlač!
    
    4
    00:01:39,459 --> 0:01:41,292
    Zajeď do boxu.
    
    5
    00:02:13,334 --> 00:02:16,501
    Tati, mám ho před sebou,
    Předjedu ho.
    
    
    
    
    Výstup:
    1
    00:00:41,501 --> 00:00:44,751
    Pokud máte vše pod kontrolou, 
    
    2
    00:00:45,042 --> 00:00:50,334
    nejedete dostatečně rychle.- Mario Andretti
    
    3
    00:01:22,042 --> 00:01:24,667
    Pokračuj, ale moc na to netlač!
    
    4
    00:01:39,459 --> 00:01:41,292
    Zajeď do boxu.
    
    5
    00:02:13,334 --> 00:02:16,501
    Tati, mám ho před sebou. Předjedu ho.
    
    Ani googl nepomohl. Díky.

    Řešení dotazu:


    Odpovědi

    Gréta avatar 17.4.2021 21:41 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.

    si to namasti jako skriptík ajeto jako neasi :O ;D

    takle třeba v pythonu základ nějakej funkční trošičku víc vošklivější :O ;D

    #!/usr/bin/env python3
    
    import sys
    
    vstup = open(sys.argv[1],'r')
    vystup = open(sys.argv[2],'w')
    
    radek = vstup.readline()
    while radek:
        vystup.write(radek)
        radek = vstup.readline()
        vystup.write(radek)
        radek = vstup.readline()
        vystup.write(radek)
        
        slepenej = ''
        radek = vstup.readline()
        while radek and radek != '\n':
            slepenej = slepenej[:-1] + radek
            radek = vstup.readline()
            
        vystup.write(slepenej)
            
    vstup.close()
    vystup.close()
    
    python3 prevadedloTitulku.py titulky_vstup.srt titulky_vystup.srt
    

    hotovo!!!!!!!!!!!! :D ;D

    Jendа avatar 17.4.2021 21:48 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Tvé řešení je kvadratické!!!
    Gréta avatar 17.4.2021 22:06 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.

    dyť jako řikám žeto je vošklivý řešení :D

    Josef Kufner avatar 19.4.2021 10:33 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Není, je to lineární. Kvadratické by to bylo, kdyby ten vnitřní cyklus četl řádky od začátku souboru, ale tady se čte každý řádek jen jednou.
    Hello world ! Segmentation fault (core dumped)
    Jendа avatar 20.4.2021 01:47 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Tohle:
    slepenej = slepenej[:-1] + radek
    zkopíruje celý dosavadní řetězec a něco k němu přidá. Takže pokud tam bude jeden titulek na strašně moc řádků, tak to bude pomalé (kvadratické).

    Samozřejmě jemu se to asi v praxi nestane, proto to nebylo myšleno úplně vážně (ve smyslu že by to Grétino řešení diskvalifikovalo - osobně to pro malé řetězce dělám úplně stejně. Ale chtěl jsem, aby se o tom vědělo, když to někdo začne používat i na jiné účely a pak se bude divit. Viz též různé další případy „accidentally quadratic“. Třeba ten nedávný průšvih se sscanf byl dobrej.)
    Josef Kufner avatar 20.4.2021 13:41 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Ach. Jo to by mohlo být. Ale skoro bych si i tipnul, že se to vyoptimalizuje do lineárna, případně to kopírování nebude kopírování, ale jen nějaké reference na substringy.

    Nicméně pokud uvažujeme, že jeden frame má jen 1 až K řádků, tak při N počtu framů je složitost N×K, kde K je konstanta a tedy je to stále lineární.
    Hello world ! Segmentation fault (core dumped)
    20.4.2021 14:01 ajtacka
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    go go go :-)
    Jendа avatar 17.4.2021 21:49 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Jinak pro lineární lepení stringů používám že je dám do listu a pak udělám "".join(l).
    Gréta avatar 20.4.2021 12:22 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.

    nebude to pro jenom dva řádky víc draší?? :O :O

    Jendа avatar 17.4.2021 21:47 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    #!/usr/bin/env python3
    
    f = open("vstup", "r")
    lines = f.readlines()
    lines = [l.strip() for l in lines]
    
    cnt = 0
    for l in lines:
      if l == "": # prázdný řádek mezi titulky
        print()
        print()
        cnt = 0
      elif cnt < 3: # číslo titulku a timestamp
        print(l)
      elif cnt >= 3: # text
        print(l, end=" ")
      cnt += 1
    
    na začátku to dělá mezeru dvakrát, to si nějak odlaď
    18.4.2021 00:45 rubicon
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Nic proti Pythonu, zde bych však volil něco jednoduššího:

    awk 'BEGIN {RS=ORS="\n\n"; FS=OFS="\n"} {if (NF>3) for (i=4;i<=NF;i++) $3=$3 " " $i; NF=3; print}' vstup.srt
    18.4.2021 23:03 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Co použít nějaký editor titulků? Bych se divil, pokud by to nějaký neuměl...
    -- OldFrog
    20.4.2021 09:31 ajtacka
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Spravna zurnalistika uci ako a kedy nieco bulvarizovat a preto sa tieto obchody nazyvaju bulvar. To vsak neznamena, ze neexistuje Sikma ulicka(plocha) s citanim medzi, ale svet Carodejnikov je niekedy zvlastny a nie niekedy podla predstav.
    xxxs avatar 20.4.2021 22:39 xxxs | skóre: 25 | blog: vetvicky
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    prosim tvorcu, aby tento paskvil vypol. dakujem.
    Gréta avatar 20.4.2021 22:45 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.

    kolik je zajíců když jako jeden de za druhým?????? :O :O

    20.4.2021 22:58 ajtacka
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Videla som kedysi nejaky kresleny serial, kde nejaki ludia v nejakej lodi cestuju po vesmire a hladaju miesto, kde by sa usadili. Malo to nieco na sposob zivota v meste, ale bolo to pradavno a neviem ako sa to vola.

    Mozno Noemova archa?
    20.4.2021 23:44 Olaf
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Ano. Kolik stojí kilo hrušek, když jedna hruška stojí samá v širém poli?
    21.4.2021 09:54 romank | skóre: 10 | blog: romank
    Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
    Skus: tr -d '\n' < input.txt

    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.