Kolejny skrót. Dość regularny przypadek zwrócenia sumy słowników bez niszczenia któregokolwiek z nich: def foo(bar, baz): tmpdict = dict(bar) tmpdict.update(baz) return tmpdict Można również rozwiązać inaczej, korzystając z faktu, że dict akceptuje nazwane parametry: def foo(bar, baz): return dict(bar, **baz) Korzystając ze skrótów zawsze upewnij się, że na pierwszy rzut oka wiadomo, co dany kod robi.
Archive for Luty, 2010
Django: direct_to_template
Nie wiem, czemu niektórzy tak uparcie korzystają z funkcji render_to_response, by za każdym razem przekazać do niej ręcznie stworzony obiekt kontekstu. Zresztą, sami oceńcie, która wersja jest ładniejsza: from django.shortcuts import render_to_response from django.template import RequestContext def foo(request): # … return render_to_response(‘foo.html’, {‘bar’: baz}, context_instance=RequestContext(request)) Czy może: from django.views.generic.simple import direct_to_template def foo(request): # … […]
Python: prawdziwy polimorfizm
Taki weekendowy żarcik: #!/usr/bin/env python import random class Foo(random.choice([int, str, unicode, Exception])): pass f = Foo(‘1’) print ‘f‘
O fontach raz jeszcze, czyli wielkość się liczy
Z powodu występującego dzisiaj u mnie przesilenia kataru, zostałem zmuszony (dosłownie ze łzami w oczach) do zmiany wielkości fontów z 10 na 12 punktów. Później wspomniałem o tym kilku osobom, dodając, że nie rozróżniam liter poniżej 16 pikseli, co w dwóch przypadkach wywołało konsternację. Punkty i piksele to nie to samo. Punkt jest jednostką typograficzną pochodzącą […]
Krzemowe kostki, czyli jak komputery zjadły RPG
Kiedy byliśmy szczylami zupełnymi (pierwsze dwie klasy podstawówki), zagrywaliśmy się w Talizman, wtedy znany jedynie jako Magia i miecz. Gra wciągała, ale z czasem zaczęliśmy szukać odmiany. Advanced Dungeons & Dragons okazało się strzałem w dziesiątkę, przynajmniej na jakiś czas. Niedługo później zaczęliśmy swoje pierwsze eksperymenty z poważnymi RPG. Eksperymenty to dobre określenie, bo pierwsze spotkania […]

