Národní bezpečnostní tým CSIRT.CZ koordinovaný sdružením CZ.NIC přichází se službou Strážci internetu, která má sjednotit způsob hlášení doménových jmen zneužívaných k páchání trestné činnosti. Službu mohou uživatelé využívat také prostřednictvím rozšíření do prohlížeče. Nový nástroj podporuje jak hlášení vyžadující autorizaci, tak anonymní reporting, u kterého však nebude možné zapojit takovou míru automatizace jako u
… více »Firefox pro iOS přichází s integrovaným blokováním reklam. Funkce je ve výchozím nastavení vypnutá a lze ji aktivovat v Settings > Browsing > Ad Blocker.
Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila (𝕏) open-source robota Microduck. Předobjednat jej lze za 340 eur.
Open-source autonomní AI agent OpenClaw (Wikipedie) byl vydán ve verzi 2026.8.1 aneb 2.0. Přehled novinek v poznámkách k vydání.
Byla vydána první veřejná preview verze PrusaSliceru 3.0. Přesně 15 let po zveřejnění první verze Slic3ru, které připadlo na 1. září 2011. Jedná se o dosud největší upgrade PrusaSliceru: "Řídili jsme se tím, co skutečně potřebujete, a tak jsme například zcela zahodili stávající uživatelské rozhraní a vytvořili ho znovu od nuly. Přinášíme také nový systém projektů, kompletně přepracované profily navržené pro moderní tiskárny s větším
… více »Byl vydán Mozilla Firefox 155.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Vypíchnout lze Smart Window, zatím ale dostupné pouze pro uživatele v USA, Kanadě a Francii. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 155 bude brzy k dispozici také na Flathubu a Snapcraftu.
Tima Cooka na pozici generálního ředitele společnosti Apple dnešním dnem nahradil John Ternus, který byl dosud odpovědný za hardware. Tim Cook vedl Apple od roku 2011, kdy funkci převzal od později zesnulého spoluzakladatele společnosti Stevea Jobse. Za 15 let v čele Applu více než zdvojnásobil tržní hodnotu firmy.
Organizátoři konference LinuxDays ukončil veřejné přihlašování přednášek. Teď je na vás, abyste vybrali nejlepší témata pro letošní ročník. Hlasovat můžete do pondělí 7. září, poté bude podle výsledků hlasování sestaven program pro letošní ročník.
Servo, engine webového prohlížeče napsaný v Rustu, byl vydán ve verzi 0.5.0. Novinky shrnuje přehled projektu za červenec. Došlo k dalšímu pokroku ve vykreslování webových stránek. Současným cílem projektu je vytvořit komponentu webového prohlížeče jako WebView pro použití v jiných aplikacích.
IKEA a XBOX představují kolekci YXSTABY (pdf). Ta přináší designová a praktická řešení, díky nimž se prostor pro hraní během sekundy promění v útulný a harmonický domov.
Při zveřejnění svého skriptu jsem tak trochu doufal, že se najde někdo, kdo by mi s jeho úpravou pomohl, respektive jej alespoň okomentoval (které části přepsat a jak, co je hrůza, co ujde...) a já bych měl tak možnost se naučit psát "čistší" programy. To se bohužel zatím nestalo, nicméně já na svůj příšerný skript nezanevřel a proběhla další várka úprav. Takže co je nového?
Nejvetší změnou je přechod od dlouhého_skriptu_s_minimem_procedur k programu sestávajícího se ze třídy a několika kratších metod. To podstatně usnadní jeho použití i v jiných programech. Další změnou je rozdělení komunikace se serverem IDOSu do více kroků a změna zpracování výstupů. Výsledky (nalezená spojení či možnosti na výběr při nepřesně zadaných koncových bodech) jsou dostupné i prostřednictvím seznamů. Dále jsem se zbavil dočasných souborů a (povetšinou) přešel na unicode retězce. A v neposlední řadě jsem opravil chybu, která nastávala při nepřesně zadaném počátečním i koncovém bodě hledaného spojení. Uživatelům, jsou-li jací, proto doporučuji přechod na novějši verzi.
Budu rád, když se ke skriptu vyjádříte a navrhnete další úpravy a vylepšení. Dostupný je stále na stejné adrese.
UPDATE: Jak už to tak chodí, chvíli po zveřejnění zápisku jsem nalezl chybu. Při zadání neexistujícího cíle se skript zacyklil. Již je to (doufám) opraveno, stahujte tedy verzi 0.35.
Tiskni
Sdílej:
, navíc python zrovna nepoužívám...
if kod == KOD_NEJEDNOZNACNE_KONCOVE_BODY: ...
else: ...
if(podm){} ?
Bloky se odlišují pomocí odsazení... je to šílený.
No, jak se to vezme. Me jako navacka v pythonu a pokrocilyho v bashi, perlu a amatera jinych docela hodne zmatlo, kdyz jsem pripsal jeden radek v python kodu a pri spusteni me to vyfuckovalo, ze mam blby zarovnani. Podival jsem se znovu, zarovnani bylo ok. Pak mi teprve doslo, ze python sice rozpoznava bloky podle odsazeni, ale ne podle vizulaniho odsazeni, ale podle poctu znaku. Takze milej uzivateli, neni whitespace jako whitespace. 8 mezer PROSTE NENI stejne jako 4 taby nastaveni na sirku 2 znaky.
Jinak me to taky docela stve z toho duvodu, ze nemuzu napsat python kod na jeden radek, napr. v cmdline.
No, python je mozna pro zacatecniky, ale ne pro pokrocily. Proto se u me moc nechyt. Ale ne, trosku mi tam vadi i funkce, schovavany za pseudo metody. Na tom se pak zacatecnici uci pekne blbe OOP.
Pocitac to vidi jak je to v tom souboru. To ze ruzne programy interpretuji delku tabu ruzne, je problem s taby, ne Pythonem. Doporucoval bych v Python zdrojacich taby vubec nepouzivat (mit v editoru nastavene nahrad taby mezerami).
else cast tak uz prece neni mozne se v tom rozumne orientovat, kdezto pekne naformatovany kod s pouzitim zavorek je prehledny vzdycky.
Python to prostě takhle má - podmínka končí dvojtečkou, blok kódu pro danou podmínku je odsazený whitespacem (případně je napsaný hned za dvojtečkou, pokud je toho jen na jeden rádek).
a nedari se mi vymyslet srozumitelnejsi reseni s generatory. Jeste jednou diky.
def parsuj_spojeni():
def generator_radku(file):
for line in file:
.. nejake zpracovani vstupni radky line
if pocet_spoju > max_pocet_spoju: break
yield line
return
pocet_spoju=0
gr=generator_radku(file)
for line in gr:
while not re.search("cosi",line): gr.next()
.. zpracovani prvniho stavu
while not re.search("cosi dalsiho",line): gr.next()
.. zpracovani druheho stavu
...
pocet_spoju+=1
Zkratka, zakladni myslenka je, mit vstupy (v tomto pripade radky) ktera chcete prijimat tim stavovym automatem schovane v tom generatoru, a stavy toho automatu implementovat jako normalni body v kodu, ktere si proste vzdy vyzadaji prislusny ocekavany vstup (bud pomoci gr.next() nebo pomoci for cyklu pres gr).
Tak bych to asi delal ja, je to citelnejsi nez studovat prechod mezi stavy a co ktery stav znamena.