Slatkin Brett
Sortowanie
Źródło opisu
Książki
(1)
Forma i typ
Książki
(1)
Publikacje dydaktyczne
(1)
Publikacje fachowe
(1)
Dostępność
dostępne
(1)
Placówka
Wypożyczalnia
(1)
Autor
Praca zbiorowa
(159)
Kaczmarczyk Michał (1981- )
(61)
Oleśniewicz Piotr (1968- )
(61)
Radwański Zbigniew (1924-2012)
(57)
Kamińska Aleksandra (1976- )
(54)
Slatkin Brett
(-)
Borski Maciej (1975- )
(50)
Denek Kazimierz (1932-2016)
(48)
Kosikowski Cezary (1942- )
(46)
Świątkowski Andrzej M. (1944- )
(46)
Barcz Jan (1953- )
(45)
Evans Virginia
(40)
Czarnecki Kazimierz M. (1933- )
(39)
Huczek Marian (1939-2023)
(39)
Faliszewska Jolanta
(38)
Fleszer Dorota (1971- )
(37)
Łuczkiewicz Grzegorz
(36)
Barta Janusz (1947-2021)
(35)
Lityński Adam (1940- )
(35)
Wróbel Andrzej (1953- )
(35)
Baran Krzysztof Wojciech
(34)
Borkowski Janusz (1934-2012)
(33)
Chodyński Andrzej
(32)
Gurdek Magdalena (1977- )
(32)
Krawiec Grzegorz (1977- )
(32)
Markiewicz Ryszard (1948- )
(31)
Garlicki Leszek (1946- )
(30)
Marek Andrzej (1940-2012)
(30)
Wierzbowski Marek (1946- )
(30)
Adamiak Barbara (1949- )
(29)
Nowak Edward (1951- )
(29)
Rozmus Dariusz (1961- )
(29)
Niewiadomski Zygmunt (1950- )
(28)
Pawlak Mirosław
(28)
Penc Józef (1939-2017)
(28)
Rogacka-Łukasik Anna (1980- )
(28)
Śliwerski Bogusław (1954- )
(28)
Lewicka Maria
(27)
Radzicki Józef
(27)
Skrzydło Wiesław (1929-2021)
(27)
Wojtaszczyk Konstanty Adam
(27)
Bauman Zygmunt (1925-2017)
(26)
Bieniek Gerard
(26)
Chmaj Marek (1969- )
(26)
Izdebski Hubert (1947- )
(26)
Sadowska-Snarska Cecylia
(26)
Smolarek Małgorzata (1974- )
(26)
Tokarczyk Roman Andrzej (1942- )
(26)
Brodecki Zdzisław
(25)
Florek Ludwik (1946- )
(25)
Hauser Roman (1949- )
(25)
Kozioł Leszek
(25)
Wentkowska Aleksandra
(25)
Grabiec Olimpia (1975- )
(24)
Kołakowski Leszek (1927-2009)
(24)
Szeligiewicz-Urban Danuta (1959- )
(24)
Łaszczyca Grzegorz (1970- )
(24)
Chmielnicki Paweł (1972- )
(23)
Dooley Jenny
(23)
Głuchowski Jan (1940- )
(23)
Hołyst Brunon (1930- )
(23)
Leoński Zbigniew (1929-2006)
(23)
Obara Małgorzata
(23)
Shakespeare William
(23)
Kotler Philip (1931- )
(22)
Kotowski Wojciech (1950- )
(22)
Latham-Koenig Christina
(22)
Ochendowski Eugeniusz (1925-2015)
(22)
Oxenden Clive
(22)
Skowrońska-Bocian Elżbieta (1948- )
(22)
Szczepański Marek S
(22)
Winiarska Kazimiera (1948- )
(22)
Banaszak Bogusław (1955-2018)
(21)
Bielenica Krystyna
(21)
Borkowska Stanisława (1939- )
(21)
Brzeziński Bogumił (1948- )
(21)
Bura Maria
(21)
Dolnicki Bogdan (1956- )
(21)
Kwil Małgorzata
(21)
Majewski Kamil
(21)
Misiorowska Ewa
(21)
Nowicki Marek Antoni
(21)
Petkowicz Helena
(21)
Szewc Andrzej
(21)
Słomczyński Maciej
(21)
Boć Jan (1939-2017)
(20)
Cieślak Zbigniew (1954- )
(20)
Kalisz Anna
(20)
Konieczna Anna
(20)
Matan Andrzej
(20)
Mruk Henryk (1948- )
(20)
Pocztowski Aleksy (1956- )
(20)
Szpor Grażyna
(20)
Tarno Jan Paweł (1951- )
(20)
Łazowski Adam
(20)
Dobrowolska Hanna
(19)
Ehrlich Andrzej
(19)
Gepert Bożena
(19)
Juchnowicz Marta (1948- )
(19)
Kisielnicki Jerzy (1939- )
(19)
Mik Cezary (1964- )
(19)
Rok wydania
2020 - 2024
(1)
Okres powstania dzieła
2001-
(1)
Kraj wydania
Polska
(1)
Język
polski
(1)
Temat
Programowanie (informatyka)
(1)
Python (język programowania)
(1)
Gatunek
Podręcznik
(1)
Dziedzina i ujęcie
Informatyka i technologie informacyjne
(1)
1 wynik Filtruj
Książka
W koszyku
Rozdział 1. Programowanie zgodne z duchem Pythona. Sposób 1. Ustalenie używanej wersji Pythona. Sposób 2. Stosuj styl PEP 8. Sposób 3. Różnice między typami bytes i str. Sposób 4. Wybieraj interpolowane ciągi tekstowe f zamiast ciągów tekstowych formatowania w stylu C i funkcji str.format(). Sposób 5. Decyduj się na funkcje pomocnicze zamiast na skomplikowane wyrażenia. Sposób 6. Zamiast indeksowania wybieraj rozpakowanie wielu operacji przypisania. Sposób 7. Preferuj użycie funkcji enumerate() zamiast range(). Sposób 8. Używaj funkcji zip() do równoczesnego przetwarzania iteratorów. Sposób 9. Unikaj bloków else po pętlach for i while. Sposób 10. Unikaj powtórzeń w wyrażeniach przypisania. Rozdział 2. Lista i słownik. Sposób 11. Umiejętnie podziel sekwencje. Sposób 12. Unikaj użycia indeksów początek, koniec i wartości kroku w pojedynczej operacji podziału. Sposób 13. Wybieraj rozpakowanie typu catch-all zamiast tworzenia wycinków. Sposób 14. Używaj parametru key podczas sortowania według skomplikowanych kryteriów. Sposób 15. Zachowaj ostrożność, gdy polegasz na kolejności wstawiania elementów do obiektu typu dict. Sposób 16. Podczas obsługi brakujących kluczy słownika wybieraj funkcję get() zamiast operatora in i wyjątku KeyError. Sposób 17. Podczas obsługi brakujących elementów w wewnętrznym stanie wybieraj typ defaultdict zamiast metody setdefault(). Sposób 18. Wykorzystaj metodę __missing__() do tworzenia wartości domyślnych w zależności od klucza. Rozdział 3. Funkcje. Sposób 19. Gdy funkcja zwraca wiele wartości, nie rozpakowuj więcej niż trzech zmiennych. Sposób 20. Preferuj wyjątki zamiast zwrotu wartości None. Sposób 21. Zobacz, jak domknięcia współdziałają z zakresem zmiennej. Sposób 22. Zmniejszenie wizualnego zagmatwania za pomocą zmiennej liczby argumentów pozycyjnych. Sposób 23. Zdefiniowanie zachowania opcjonalnego za pomocą argumentów w postaci słów kluczowych. Sposób 24. Użycie None i docstring w celu dynamicznego określenia argumentów domyślnych. Sposób 25. Wymuszaj czytelność kodu, stosując jedynie argumenty w postaci słów kluczowych. Sposób 26. Dekoratory funkcji definiuj za pomocą functools.wraps. Rozdział 4. Konstrukcje składane i generatory. Sposób 27. Używaj list składanych zamiast funkcji map() i filter(). Sposób 28. Unikaj więcej niż dwóch wyrażeń na liście składanej. Sposób 29. Stosuj wyrażenia przypisania, aby unikać powielania zadań w konstrukcjach składanych. Sposób 30. Rozważ użycie generatorów, zamiast zwracać listy. Sposób 31. Podczas iteracji przez argumenty zachowuj postawę defensywną. Sposób 32. Rozważ użycie generatora wyrażeń dla dużych list składanych. Sposób 33. Twórz wiele generatorów za pomocą wyrażenia yield from. Sposób 34. Unikaj wstrzykiwania danych do generatorów za pomocą metody send(). Sposób 35. Unikaj w generatorach przejścia między stanami za pomocą metody throw(). Sposób 36. Rozważ stosowanie modułu itertools w pracy z iteratorami i generatorami. Rozdział 5. Klasy i interfejsy. Sposób 37. Twórz klasy, zamiast zagnieżdżać wiele poziomów typów wbudowanych. Sposób 38. Dla prostych interfejsów akceptuj funkcje zamiast klas. Sposób 39. Użycie polimorfizmu @classmethod w celu ogólnego tworzenia obiektów. Sposób 40. Inicjalizacja klasy nadrzędnej za pomocą wywołania super(). Sposób 41. Rozważ łączenie funkcjonalności za pomocą klas domieszek. Sposób 42. Preferuj atrybuty publiczne zamiast prywatnych. Sposób 43. Stosuj dziedziczenie po collections.abc w kontenerach typów niestandardowych. Rozdział 6. Metaklasy i atrybuty. Sposób 44. Używaj zwykłych atrybutów zamiast metod typu getter i seter. Sposób 45. Rozważ użycie @property zamiast refaktoryzacji atrybutów. Sposób 46. Stosuj deskryptory, aby wielokrotnie wykorzystywać metody udekorowane przez @property. Sposób 47. Używaj metod __getattr__(), __getattribute__() i __setattr__() dla opóźnionych atrybutów. Sposób 48. Sprawdzaj podklasy za pomocą __init_subclass__. Sposób 49. Rejestruj istniejące klasy za pomocą __init_subclass__(). Sposób 50. Adnotacje atrybutów klas dodawaj za pomocą metody __set_name__(). Sposób 51. Dla złożonych rozszerzeń klas wybieraj dekoratory klas zamiast metaklas. Rozdział 7. Współbieżność i równoległość. Sposób 52. Używaj modułu subprocess do zarządzania procesami potomnymi. Sposób 53. Użycie wątków dla operacji blokujących wejście- yjście, unikanie równoległości. Sposób 54. Używaj klasy Lock, aby unikać stanu wyścigu w wątkach. Sposób 55. Używaj klasy Queue do koordynacji pracy między wątkami. Sposób 56. Naucz się rozpoznawać, kiedy współbieżność jest niezbędna. Sposób 57. Unikaj tworzenia nowych egzemplarzy Thread na żądanie fan-out. Sposób 58. Pamiętaj, że stosowanie Queue do obsługi współbieżności wymaga refaktoringu. Sposób 59. Rozważ użycie klasy ThreadPoolExecutor, gdy wątki są potrzebne do zapewnienia współbieżności. Sposób 60. Zapewnij wysoką współbieżność operacji wejścia-wyjścia dzięki użyciu współprogramów. Sposób 61. Naucz się przekazywać do asyncio wątkowane operacje wejścia-wyjścia. Sposób 62. Połączenie wątków i współprogramów w celu ułatwienia konwersji na wersję stosującą asyncio. Sposób 63. Maksymalizuj responsywność przez unikanie blokującej pętli zdarzeń asyncio. Sposób 64. Rozważ użycie concurrent.futures(), aby otrzymać prawdziwą równoległość. Rozdział 8. Niezawodność i wydajność. Sposób 65. Wykorzystanie zalet wszystkich bloków w konstrukcji try-except-else-finally. Sposób 66. Rozważ użycie poleceń contextlib i with w celu uzyskania wielokrotnego użycia konstrukcji try-finally. Sposób 67. Podczas obsługi czasu lokalnego używaj modułu datetime zamiast time. Sposób 68. Niezawodne użycie pickle wraz z copyreg. Sposób 69. Gdy ważna jest precyzja, używaj modułu decimal. Sposób 70. Przed optymalizacją przeprowadzaj profilowanie. Sposób 71. Wybieraj typ deque podczas tworzenia kolejek typu producent – konsument. Sposób 72. Podczas wyszukiwania danych w sortowanych sewencjach stosuj moduł bisect. Sposób 73. W kolejkach priorytetowych używaj modułu heapq. Sposób 74. Podczas kopiowania zerowego obiektów typu bytes używaj egzemplarzy memoryview i bytearray. Rozdział 9. Testowanie i debugowanie. Sposób 75. Używaj ciągów tekstowych repr do debugowania danych wyjściowych. Sposób 76. W podklasach klasy TestCase sprawdzaj powiązane ze sobą zachowanie. Sposób 77. Izoluj testy od siebie za pomocą metod setUp(), tearDown(), setUpModule() i tearDownModule(). Sposób 78. Podczas testowania kodu zawierającego skomplikowane zależności korzystaj z imitacji. Sposób 79. Hermetyzuj zależności, aby ułatwić tworzenie imitacji i testowanie. Sposób 80. Rozważ interaktywne usuwanie błędów za pomocą pdb. Sposób 81. Stosuj moduł tracemalloc, aby poznać sposób użycia pamięci i wykryć jej wycieki. Rozdział 10. Współpraca. Sposób 82. Kiedy szukać modułów opracowanych przez społeczność? Sposób 83. Używaj środowisk wirtualnych dla odizolowanych i powtarzalnych zależności. Sposób 84. Dla każdej funkcji, klasy i modułu utwórz docstring. Sposób 85. Używaj pakietów do organizacji modułów i dostarczania stabilnych API. Sposób 86. Rozważ użycie kodu o zasięgu modułu w celu konfiguracji środowiska wdrożenia. Sposób 87. Zdefiniuj główny wyjątek Exception w celu odizolowania komponentu wywołującego od API. Sposób 88. Zobacz, jak przerwać krąg zależności. Sposób 89. Rozważ użycie modułu warnings podczas refaktoryzacji i migracji kodu. Sposób 90. Rozważ stosowanie analizy statycznej za pomocą modułu typing w celu usuwania błędów.
1 placówka posiada w zbiorach tę pozycję. Rozwiń informację, by zobaczyć szczegóły.
Wypożyczalnia
Są egzemplarze dostępne do wypożyczenia: sygn. 004 (2 egz.)
Pozycja została dodana do koszyka. Jeśli nie wiesz, do czego służy koszyk, kliknij tutaj, aby poznać szczegóły.
Nie pokazuj tego więcej