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 17:44 | Nová verze

Společnost PINE64 stojící za telefonem PinePhone, notebooky Pinebook a Pinebook Pro, IP kamerou PineCube, hodinkami PineTime, páječkou (pájecím perem) Pinecil, zdroji PinePower nebo RISC-V vývojovou deskou PineCone publikovala na svém blogu květnový souhrn novinek (YouTube). Zmínit lze například prototyp klávesnice k PinePhonu, vybraný název PineDio pro PINE64 LoRA ekosystém nebo Fedora Linux na Pinebooku Pro.

Ladislav Hagara | Komentářů: 0
dnes 16:33 | Zajímavý software

V prosinci loňského roku byl představen Rizin, fork frameworku pro reverzní inženýrství a analýzu binárních souborů radare2 (r2). Vývojáři Rizinu si vzali s sebou Cutter, do té doby grafickou nadstavbu nad radare2 (r2). Vývojáři radare2 (r2) tedy přejmenovali svou nadstavbu na r2cutter. Dnes je to už ale iaito. Vývojáři se vrátili ke jménu projektu (iaito), ze kterého vznikl Cutter.

Ladislav Hagara | Komentářů: 0
dnes 09:00 | Nová verze

Byla vydána nová verze 12.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

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

Po osmi letech vývoje byla vydána verze 3 programovacího jazyka Scala (Wikipedie). Přehled novinek v aktualizované dokumentaci.

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

O víkendu 15. a 16. května probíhá AlpineConf 2021, tj. online konference vývojářů a uživatelů Alpine Linuxu.

Ladislav Hagara | Komentářů: 0
včera 08:00 | IT novinky

Byl spuštěn, zatím jenom v USA, předprodej v únoru představeného modulárního notebooku Framework. Cena sestaveného notebooku (Framework Laptop) začíná na 999 dolarech. Cena stavebnice (DIY Edition) bez Windows 10 a také bez paměti, disku a Wi-Fi začíná na 749 dolarech.

Ladislav Hagara | Komentářů: 17
13.5. 18:11 | IT novinky

Společnost System76 prodávající počítače s předinstalovaným Pop!_OS nebo Ubuntu spustila předprodej své open source klávesnice Launch. Její cena je 285 dolarů.

Ladislav Hagara | Komentářů: 25
13.5. 18:00 | Nová verze

Vývojáři PostgreSQL oznámili vydání verzí 13.3, 12.7, 11.12, 10.17 a 9.6.22. Opraveno je více než 45 chyb. Řešeny jsou také 3 bezpečnostní chyby (CVE-2021-32027, CVE-2021-32028 a CVE-2021-32029). Upstream podpora verze 9.6 končí 11. listopadu letošního roku.

Ladislav Hagara | Komentářů: 0
13.5. 09:00 | Zajímavý software

Vývojáři Sequoia PGP, tj. implementace OpenPGP v programovacím jazyce Rust, na svém blogu představili certifikační autoritu pro OpenPGP OpenPGP CA. Nejnovější verzi 0.10.1 lze instalovat z crates.io. Zdrojové kódy jsou k dispozici na GitLabu.

Ladislav Hagara | Komentářů: 0
13.5. 08:00 | Nová verze

Byly vydány nové major verze webového frameworku Flask (Wikipedie) napsaného v Pythonu a souvisejících knihoven. Podrobnosti v příspěvku Flask 2.0, Werkzeug 2.0, Jinja 3.0, Click 8.0, ItsDangerous 2.0 a MarkupSafe 2.0 na blogu Pallets Projects.

Ladislav Hagara | Komentářů: 0
Transakční aktualizace
 (18%)
 (4%)
 (6%)
 (3%)
 (9%)
 (60%)
Celkem 175 hlasů
 Komentářů: 0
Rozcestník

Dotaz: Spojit dva řádky do jednoho.

17.4. 20:46 Arny
Spojit dva řádky do jednoho.
Přečteno: 826×
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. 21:41 Gréta | skóre: 31 | blog: Grétin blogísek | Stockholm
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

✊ canceled people hele 🤐 🤐 ✊ podobnej projekt dana vávry hele 🤐 🤐 ✊
Jendа avatar 17.4. 21:48 Jendа | skóre: 77 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
Tvé řešení je kvadratické!!!
Gréta avatar 17.4. 22:06 Gréta | skóre: 31 | blog: Grétin blogísek | Stockholm
Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.

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

✊ canceled people hele 🤐 🤐 ✊ podobnej projekt dana vávry hele 🤐 🤐 ✊
Josef Kufner avatar 19.4. 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. 01:47 Jendа | skóre: 77 | 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. 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. 14:01 ajtacka
Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
go go go :-)
Jendа avatar 17.4. 21:49 Jendа | skóre: 77 | 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. 12:22 Gréta | skóre: 31 | blog: Grétin blogísek | Stockholm
Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.

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

✊ canceled people hele 🤐 🤐 ✊ podobnej projekt dana vávry hele 🤐 🤐 ✊
Řešení 1× (Gréta)
Jendа avatar 17.4. 21:47 Jendа | skóre: 77 | 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ď
Řešení 1× (Gréta)
18.4. 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. 23:03 OldFrog {Ondra Nemecek} | skóre: 35 | 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. 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. 22:39 xxxs | skóre: 21 | blog: vetvicky
Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.
prosim tvorcu, aby tento paskvil vypol. dakujem.
Gréta avatar 20.4. 22:45 Gréta | skóre: 31 | blog: Grétin blogísek | Stockholm
Rozbalit Rozbalit vše Re: Spojit dva řádky do jednoho.

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

✊ canceled people hele 🤐 🤐 ✊ podobnej projekt dana vávry hele 🤐 🤐 ✊
20.4. 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. 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. 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.