Byla vydána nová verze 3.22.0 grafického vývojového prostředí a platformy Gambas (Wikipedie) založené na interpretru programovacího jazyka Basic s rozšířením o objektově orientované programování. Přehled novinek v poznámkách k vydání. Zdrojové kódy jsou k dispozici na GitLabu.
FreeBSD odstranilo poslední GPL kód ze základního systému. Konkrétně dpv, libdpv, libfigpar a dialog. Instalátor před čtyřmi lety přešel z dialogu na bsddialog.
Sociální síti 𝕏 (dříve Twitter) má dnes 20 let. Pro veřejnost byla zpřístupněna 15. července 2006.
Insula Faktury je open source generátor faktur, který běží přímo ve webovém prohlížeči. Žádná registrace, žádné sledování, žádné omezení. Zdrojové kódy jsou k dispozici na Codebergu.
První Mobile Linux Hackday v Plzni, tj. komunitní setkání věnované Linuxu na mobilních zařízeních, proběhne 24. července od 10:00. Akce je otevřená všem zájemcům – od zvědavců po zkušené vývojáře. Dopoledne proběhnou přednášky Davida Heidelberga a Petra Hodiny o aktuálním stavu mobilního Linuxu: proč vůbec chtít tučňáka v kapse, jaké telefony jsou dnes dobře podporované a co taková podpora obnáší. Po obědě se zaměříme na konkrétní
… více »3D software Blender byl vydán ve verzi 5.2 s prodlouženou podporou. Videopředstavení na YouTube.
SketchForge 3D (GitHub, reddit) je open source 3D editor / CAD běžící ve webovém prohlížeči bez nutnosti účtu nebo cloudového úložiště. Inspirovaný byl Tinkercadem. Doporučena je lokální instalace.
Byla vydána nová verze 11.9 webového prohlížeče Midori (Wikipedie, GitHub). S novým centrem ovládání, pokročilejším blokováním reklam, optimalizací výkonu…
Na Crowd Supply běží kampaň na podporu open source čtečky elektronických knih Open Book Touch. Postavena je na ESP32-S3. Má 4,26palcový dotykový e-papírový displej s rozlišením 480×800 pixelů, podsvícení, slot na microSD kartu. Cena je 149 dolarů a poštovné 12 dolarů. Dodání je plánováno na duben 2027.
Na Humble Bundle běží akce Linux: All the Things by O'Reilly a Picos, HATs, and More by Raspberry Pi Press. Elektronické knihy lze koupit se slevou a současně podpořit organizace Code for America a Raspberry Pi Foundation.
Ahoj, mohl by mi nekdo vysvetlit, proc bych mel pouzit lambda funkci namisto normalni funkce? Vyhody, nevyhody? Oboje dela totez...
soucet=lambda a,b: a+b
---
def soucet(a,b):
return a+b
Lambda umožňuje ušetřit až dva řádky kódu a nemusíš vymýšlet název pro funkci. Tím výhody končí. Giudo van Rossum ji už dávno navrhoval z Pythonu úplně odstranit. Bohužel to neprošlo, ale vůbec nic nezkazíš, když lambdu nikdy nepoužiješ. Spíš naopak.
Až pro to budete mít využití, tak názor změníte. Není důvod pro jednoduché operace psát nové funkce někam mimo, když je můžete lambdou zapsat přímo v místě jejich použití. Osobně to u velkých projektů často ocením.
Nevím jestli v Pythonu (ale v otázce o Pythonu nic není), ale lambda se dost hodí u funkcí které vracejí funkce (například curry, konvertory regexp -> funkce a podobně)
no zrovna totez to uplne nedela .... , vykonove na tom bude lepe druha varianta ....., a anonymni funkce maji celkem specificke vyuziti ..... zvlast kdyz nekdo pouziva funkcionalni programovani , napriklad kdyz potrebujes vratit z funkce/tridy funkci
viz http://docs.python.org/3.0/tutorial/controlflow.html#lambda-forms
+ ad 1 komentar nic se nestne kdyz ji nikdy nepouzijes ....
Takové debaty se na pythonních fórech vlečou už spoustu let. Závěr je pokaždé stejný. Lambda umožní někdy ušetřit až dva řádky kódu a nemusíte pojmenovávat funkci. Někdo tvrdí, že je to báječné. Někdo zase, že se nevyplatí mít další klíčové slovo a konstrukci, která jen omezeným způsobem duplikuje definici funkce.
Je úplně jedno, co funkce vrací, je jedno zda programujete funkcionálně nebo bůhvíjak, je jedno zda máte velký projekt nebo malý. Uvedený příklad z tutoriálu lze napsat třemi způsoby.
#!/usr/bin/python
class make_incrementor1:
def __init__(self, x):
self.x = x
def __call__(self, y):
return y + self.x
def make_incrementor2(x):
def incr(y): return x + y
return incr
def make_incrementor3(n):
return lambda x: x + n
f = make_incrementor1(42)
print f(0)
print f(1)
f = make_incrementor2(50)
print f(0)
print f(1)
f = make_incrementor3(55)
print f(0)
print f(1)
Jenže takový příklad je právě věc kde je lambda úplně, s prominutím, na hovno. Výhodu přináší v konstrukcích (nejen) následujícího druhu:
a = [1, 2, 3, 4, 5]
b = map(lambda x: x * 2, a)
Lambda je naho*no i v tomto případě.
>>> a = [1, 2, 3, 4, 5] >>> [x*2 for x in a] [2, 4, 6, 8, 10]
Jistě, šlo mi jen o (podle mě) názornější příklad použití lambdy kdekoliv místo normální funkce, protože to (podle mě) z toho tutoriálového incrementoru začátečník nikdy nepochopí (jako nejpíš i náš tazatel).
Tiskni
Sdílej: