V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 14.0 (Mastodon). Forgejo je fork Gitei.
Just the Browser je projekt, 'který vám pomůže v internetovém prohlížeči deaktivovat funkce umělé inteligence, telemetrii, sponzorovaný obsah, integraci produktů a další nepříjemnosti' (repozitář na GitHubu). Využívá k tomu skrytá nastavení ve webových prohlížečích, určená původně pro firmy a organizace ('enterprise policies'). Pod linuxem je skriptem pro automatickou úpravu nastavení prozatím podporován pouze prohlížeč Firefox.
Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.18. Díky 174 přispěvatelům.
Miliardy korun na digitalizaci služeb státu nestačily. Stát do ní v letech 2020 až 2024 vložil víc než 50 miliard korun, ale původní cíl se nepodařilo splnit. Od loňského února měly být služby státu plně digitalizované a občané měli mít právo komunikovat se státem digitálně. Do tohoto data se povedlo plně digitalizovat 18 procent agendových služeb státu. Dnes to uvedl Nejvyšší kontrolní úřad (NKÚ) v souhrnné zprávě o stavu digitalizace v Česku. Zpráva vychází z výsledků víc než 50 kontrol, které NKÚ v posledních pěti letech v tomto oboru uskutečnil.
Nadace Wikimedia, která je provozovatelem internetové encyklopedie Wikipedia, oznámila u příležitosti 25. výročí vzniku encyklopedie nové licenční dohody s firmami vyvíjejícími umělou inteligenci (AI). Mezi partnery encyklopedie tak nově patří Microsoft, Amazon a Meta Platforms, ale také start-up Perplexity a francouzská společnost Mistral AI. Wikimedia má podobnou dohodu od roku 2022 také se společností Google ze skupiny
… více »D7VK byl vydán ve verzi 1.2. Jedná se o fork DXVK implementující překlad volání Direct3D 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.
Byla vydána verze 12.0.0 knihovny libvirt (Wikipedie) zastřešující různé virtualizační technologie a vytvářející jednotné rozhraní pro správu virtuálních strojů. Současně byl ve verzi 12.0.0 vydán související modul pro Python libvirt-python. Přehled novinek v poznámkách k vydání.
CreepyLink.com je nový zkracovač URL adres, 'díky kterému budou vaše odkazy vypadat tak podezřele, jak je to jen možné'. Například odkaz na abclinuxu.cz tento zkracovač převádí do podoby 'https://netflix.web-safe.link/logger_8oIlgs_free_money.php'. Dle prohlášení autora je CreepyLink alternativou ke zkracovači ShadyURL (repozitář na githubu), který dnes již bohužel není v provozu.
Na blogu Raspberry Pi byla představena rozšiřující deska Raspberry Pi AI HAT+ 2 s akcelerátorem Hailo-10 a 8 GB RAM. Na rozdíl od předchozí Raspberry Pi AI HAT+ podporuje generativní AI. Cena desky je 130 dolarů.
Wikipedie slaví 25. výročí svého založení. Vznikla 15. ledna 2001 jako doplňkový projekt k dnes již neexistující encyklopedii Nupedia. Doména wikipedia.org byla zaregistrována 12. ledna 2001. Zítra proběhne v Praze Večer svobodné kultury, který pořádá spolek Wikimedia ČR.
Už dlouho pokukuji po tom, že zapojím do své práce programovací jazyky jako Python, nebo Ruby. Celkem dlouho jsem studoval různé tutoriály těchto dvou jazyků, abych se rozhodl, který z nich si vyberu. Nakonec to bylo celkem jednoduché, rozhodl jsem pro Python. Důvody byly dva. Jednak dnes si nechci nic začínat s jazykem, který nepočítá již v jazyce s Unicode řetězci, což je bohužel případ Ruby. Druhý důvod je spíše emocionální, neobjektivní a nespravedlivý. Ruby mi některými svými způsoby připomínalo Perl, což je jazyk, jehož syntaxi a některé způsoby vysloveně nesnáším a tento můj rasistický postoj se bohužel promítá i do Ruby.
Protože nerad zdlouhavě teoretizuji, rozhodl jsem se jít hned do praxe a napsat pár jednoduchých skriptů v Pythonu, abych ho vyzkoušel na jednoduchých úlohách. Přečetl jsem si pouze základní tutoriál, abych se seznámil se základní syntaxí Pythonu, jeho zvláštnostmi a pak jsem jel naostro. Zde přináším postřehy z tohoto testování Pythonu.
První bylo střetnutí s vývojovým prostředím IDLE, což má být standardní vývojové prostředí pro vývoj Pythonu. V zásadě prostředí fungovalo k mé spokojenosti a nemohu mu nic podstatného vytknout.
Ok, začal jsem psát první skript. Co mám povídat, čím víc jsem psal, tím víc se mi Python líbil. Odkojen mnoha jazyky stylu C/C++, Java, C#, PHP, a dalšími jsem zjistil, že v Pythonu jdou věci tak snadno! Ten jazyk mi začal připadat jako kamarád, který se mi snaží opravdu pomoci. Nenutí mě k ďábelským trikům, když chci dokázat něco složitějšího, jako C/C++ (doporučuji prohléhnout knihovnu boost a jeho implementaci práce s datumem a časem pomocí nejvyšších prvků C++ - jenom půj megabajtu zdrojáků
). Neklade mi překážky typu "musíš se mi absolutně přizpůsobit a jenom já vím co je pro Tebe dobré a pokud chceš něco, co já neumím jsi barbar" jako Java. A taky nezažívám traumata typu "ani porovnávání dvou řetězců nezvládne jednoduše porovnat dva řetězce" jako PHP.
Na druhé straně problémy taky byly. Například jsem neodhadl chování konstrukce print, které má jednoduše vypsat své operandy oddělené čárkou. Co jsem nečekal je, že mezi jednotlivé výpisy Python vkládá mezeru, což se mi skoro nikdy nehodilo. Sakra, kterej vůl takové chování konstrukce print vymyslel? A proč? Takže jsem konstrukci print začal v Pythonu ignorovat jako neužitečnou a špatnou a řeším to jinými způsoby.
Pokud bych měl dál posoudit první kontakt s Pythonem, tak mě též překvapil manuál k Pythonu. Manuál je vynikající a je v něm všechno podstatné. Pokud budete používat HTML verzi, nic vám nebude chybět. Já jsem část svých pokusů s Pythonem odehrál i na Windows (chtěl jsem vyzkoušel multiplatformost Pythonu), kde jsem používal CHM verzi manuálu a jeho rejstřík nestál za nic. Mnohdy jsem si dal vyhledat v rejstříku určitá hesla, kde mě to odkazovalo na naprosto nesmyslná místa, a místo kde dané heslo skutečně bylo jsem nakonec vždycky musel vyhledat fulltextovým vyhledáváním. Ale jinak musím říci, že manuál je dobrý, je v něm vše, co jsem potřeboval a byla na něm odvedena dobrá práce.
Další překvapení jsou standardní knihovny Pythonu. Dovolil bych si vznést předpoklad, že vznikaly dost neookordinovaně a na jejich rozhraní je to bohužel hodně znát. Tím neříkám, že by byly špatné, ale jaksi ... ehm ... to není ono ... ehm .... Každý modul má trochu jiný styl. Asi jsem moc zmlsaný dobrým návrhem knihoven Javy. No pokud bude zájem, můžu se o knihovnách Pythonu rozpepsat někdy později více.
Ještě jsem se okrajově zajímal o Jython, což má být implementace Pythonu na virtuální stroj Javy. Měl jsem z něho rozpačitý dojem, protože spousta věcí z Pythonu tam nefuguje, leckteré standardní knihovny Pythonu mají problémy a vůbec mě přišlo, že autor chce jít spíše cestou používání Javovských knihoven. Existuje ještě komplementární projekt IronPython, který generuje kód pro .NET framework, který jsem ale nezkoušel. Veskrze ale těmto projektům nedůvěřuji, protože si myslím, že přešít dynamicky typovaný jazyk s vícenásobnou dědičností, jakým je Python na virtuální stroj, který je připraven pro statické jazyky musí vést jedině ke značným kompromisům.
Celkově mám dojem z Pythonu velmi dobrý a velmi příjemně mě překvapil. Určitě ho budu minimálně pro své věci používat. Docela by mě zajímalo, zda existuje uplatnění pro Python v praxi, třeba v nějakém zaměstnání, či jinde.
Tiskni
Sdílej:
Jako Pythonista Ti preju hodne uspechu a spokojenosti s Pythonem.
K modulum: To je pravda. Moduly delali ruzni lide, neexistuje pro ne neaka norma, ktera by urcovala jakym zpusobem je psat. Obecne je zvykem je delat objektove, definovat tridy a v nich funkce, venku pak promene a tak, aby se vyuzily vyhody Pythonu. Nicmene ke snad kazdemu modulu existuje (vetsinou) dobra dokumentace, tak neni problem pomerne rychle se naucit modul ovladat.
Jinak, Ruby 2 se určitě v mnoha směrech polepší, sám autor napsal už před časem sebehanu. Perlismy jsou tak jako tak deprecated, IMHO to bylo především na přetáhnutí perlistů.
Pak jim někdo určitě strčí do ruky Coding Style Guide...
Pokud vám na tom záleží, vracejte vždycky hodnotu přes return a metody bez returnu střílejte na potkání.
http://www.rubyist.net/~matz/slides/rc2003/index.html
print parametry v jediném operandu (op1+op2), to bude bez mezer (ale type conversion si budete muset ohlídat sám)
K praktickému využití: Gentoo Portage je z velké části v Pythonu, Seznam.cz má taky monstrozní část webu postavenou na pythonu (např. chat) a pro svou školu jsem v Pythonu napsal systém pro správu sítě... a díky pythonu to netrvalo ani den :) takže jako jazyk pro blitzschnell vývoj je Python dokonalej
.
Mohl bys treba jeste naznacit, jak je to s rychlosti? Jak se programuje GUI a jak to pripadne funguje ve Windows? Jak funguji graficke veci (cmarani nejakych car v okne apod.)? Pripadne porovnani s Javou (dejme tomu jednoduche kresleni)? Nechci samozrejme veci z manualu, spis postrehy programatora (dle tvych prispevku te povazuji za zkuseneho vlka
).
Sveho casu (kdyz jsem zacal psat vlastni forms server a vyvojove prostredi) jsem se pokousel rozbehnout GNU Forms, (abych se mrknul, jak to vypada a jestli by nebylo lepsi pridat se k tomuto projektu, pripadne ho jenom zacit pouzivat) a problemy, ktere jsem pri tom mel, me odradily... Mozna jsem je prikladal Pythonu neopravnene, ale byl prvni na rane
.
Take mi trochu vadi nutnost instalovat (na Windows) dalsi runtime. A myslim, ze jsem tehdy narazil take na nutnost instalovat novejsi verzi i na Linuxu, coz mi nalady nepridalo
. Ale je fakt, ze tyto zkusenosti bych datoval nekam kolem roku 2000.
většinu věcí jsem testoval na starém vykopávkovém počítači Pentium 200 MHz a Python běžel v pohoděA tohle me tesi jeste vic
. S Javou na podobnem stroji mi to nejak neklapalo
.
toolkitu je hodne, wxPython (wrapper kolem wxWidgets), o kterem pisu diplomku, je dobry. Ma dobrou dokumentaci a je opravdove multiplatformni (na rozdil treba od cisteho GTK. wxPython pouziva GTK pouze v Linuxu, na Win a Mac ma nativni look). PyQt je take kvalitni a je rychly. Qt ma navic vyhodu, ze pro nej existuje kvalitni nastroj pro design GUI (QtDesigner ...a dalsich par kvalitnich programu nam Trolltech nadelil), zato pro wxWindows jsem tak kvalitni nastroj zadarmo nenasel. Pouzivam wxGlade, ale to spis jen na zacatek aplikace, pak rucne :/ Neda se s QtDesignerem srovnavat. Boa-Constructor je to nejvetsi psycho, co jsem videl...proste mi absolutne vubec nevyhovuje. No flame please. Pak je tu samozrejme PyGTK, nezkousel jsem. Nevidim duvod, proc bych pouzival PyGTK, kdyz mam wxPython. Mozna je rychlejsi? Nevim.
Pak Tkinter, na kterem jede to IDLE. Ten uz umira...doufam
Je na Linuxu fakt hnusnej
IMHO samozrejme...
Asi toho je i vic, IronPython asi taky, .NET/Mono je i na vyvijeni multiplatformnich GUI, ne? Esi to chapu...
Vybirat je z ceho, Python i prace na GUI s nim je krasa
V zásadě chci vykoušet vše, co se mi bude zdát trochu licenčně a funkčně přijatelné z tohoto seznamu: http://wiki.python.org/moin/GuiProgrammingVida! V Pythonu se da pouzit i eclipsi SWT...to jsem ani nevedel, podivam se na to. tedy ne, ze by byl Eclipse kdovijak svizny - i kdyz ja osobne jsem tou absenci sviznost ochoten zaplatit za jeho kvalitu. Ale podle me kazda opravdu multiplatformni knihovna, ktera si da tu praci a vypada na danych systemech (vice mene) nativne, stoji za vyzkouseni
ale podivam se na to stejne jako vy na Tk
>>> data = range(20) >>> neco = [x for x in data if x%2 == 0] >>> print neco [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
to je ono ne ?
Zajímá mě, jaký výstup vlastně Python má. Může z něj vypadnout binárka? Třeba .exe nebo linuxová binárka?Pro windows je tu py2exe, pro Linux nevim o zadne takove moznosti, ktera by vytvarela uplne klasicke binarky. Co ale vim je, ze pythonsky program prispusteni vytvori .pyc soubor, coz je neco mezi klasickou binarkou a zdrojakem. Takovy polotovar. Jak moc to ovlivnuje rychlost, to nevim. Correct me if I'm wrong.
Jak těžké je udělat v pythonu nějaký GUI program?to je strasne relativni pojem... lehke to podle me neni nikdy s zadnym jazykem. Nejakou praci to chce. Ale verte mi, ze Python vam to svou povahou ulehci jak jen to bude mozne
compiler.compileFile().
print "soucet cisel %d a %d je roven *%d*" % (a, b, c)
a je to bez mezer :)
Jeste muj posterh k dokumentaci. Jak je mozne ze jenom me pripada tak stracne neprehledna? Vsude kde o Pythonu neco ctu ji vychvaluji, ale po pravde to nechapu - nevim proc, asi mi neco unika :)))
Jak je mozne ze jenom me pripada tak stracne neprehledna? Vsude kde o Pythonu neco ctu ji vychvaluji, ale po pravde to nechapu - nevim proc, asi mi neco unika :)))me asi taky neco unika, podle me je ta dokumentace strasna a neprehledna - zlatej javadoc (noflame).
P.S.: Upřímně řečeno, jako referenční příručka Pythonovský manuál nemá zase takových kvalit, ale má šanci stát se dobrou příručkou. Je v ní leccos, od tutoriálu, po syntaxi jazyka, přes C API, a tak dál. Tak to má být. Já vždycky rostu, když dostávám strojově generované příručky generované pomocí javadoc/oxygen a podobných nástrojů. Mě se daleko více líbí příručky psané ve stylu manuálu k PHP, kterou považuji za daleko užitečnější a líbí se mi, že Pythonovský manuál má tendenci jít stejným směrem.
to jste mě ještě více postrašil. právě jsem zjistil, že print dokonce předaný řetězec nějak interpretuje a hledá v něm procenta a snaží se podle nich formátovat. uf! print je velmi nebezpečná věc, budu si muset na to dávat pozor.![]()
neco jako
print "odpoved na otazku %s je %i" % ("zivot,vesmir a vubec", 42) ???
to je prave ta krasa jednoduchosti kterou na pythonu miluju - neni to vubec vlastnost prikazu print (a tedy vyjimka z vyjimky) ale proste vtipne pouzity pretizeny operator (a tedy standartni vlastnost jazyka), jakmile pochopite logiku te veci (a pokud znate printf formatovaci znaky z C) je to trivialitka.
oddelovani parametru prikazu print je imho spis ladici zalezitost - kdyz je potreba nekde rychle neco vyblejt bude to fungovat bez dodatecne namahy. specialnejsi chovani muze stejne vyzadovat kazdy jine takze se mi zda spravne nesnazit se zavdecit vsem coz z principu nejde a misto toho poskytnout prostredky jak dosahnout co nejprizpusobivejsiho vystupu s co nejmensi namahou.
btw pripomina mi to awk a vsadim se ze nekde v sys knihovne bude promena kterou pujde ten oddelovac nastavit, jako je v awku promena OFS.
import os
def safe_print(*params):
for p in params:
os.sys.stdout.write(str(p))
safe_print("a",3,23.4,"\n")
Používám svojí funkci safe_print a print je pro mě neexistující věc.
Pozde, ale co kdyz to nekdo bude nekdy cist:
a=['ahoj','cau']
for x in a: print x
for x in a: print x, #carka na konci!
Viz například Effective Java od J. Blocha... :-P