Python_Receptury_pytrec.pdf
(
357 KB
)
Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TREŒCI
Python. Receptury
Autorzy: Alex Martelli, Anna Martelli
Ravenscroft, David Ascher
T³umaczenie: Wojciech Moch, Marek Pêtlicki
ISBN: 83-246-0214-3
Tytu³ orygina³u:
Python Cookbook
Format: B5, stron: 848
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOŒCIACH
ZAMÓW CENNIK
Python zosta³ opracowany na pocz¹tku lat "90 i szybko zyska³ uznanie programistów.
Elastyczny i uniwersalny, pozwala³ na stosowanie zasad programowania obiektowego,
strukturalnego i funkcyjnego. By³ i nadal jest wykorzystywany nie tylko do tworzenia
skryptów, ale równie¿ przy du¿ych projektach, takich jak na przyk³ad serwer aplikacji
Zope. Decyduj¹c siê na korzystanie z Pythona, stajemy siê czêœci¹ niezwyk³ej
spo³ecznoœci programistów, chêtnie pomagaj¹cej ka¿demu, kto chce doskonaliæ
umiejêtnoœæ pos³ugiwania siê tym jêzykiem.
Ksi¹¿ka „Python. Receptury” to zbiór rozwi¹zañ problemów, z jakimi w codziennej pracy
borykaj¹ siê programiœci korzystaj¹cy z tego jêzyka. Materia³y do niej przygotowa³o
ponad 300 cz³onków spo³ecznoœci Pythona odpowiadaj¹cych na pytania zadawane
na forum internetowym. Rozwi¹zania zosta³y przetestowane w praktyce, co u³atwia ich
zaimplementowanie we w³asnych projektach.
W ksi¹¿ce umówiono m.in.:
• Przetwarzanie tekstów
• Operacje na plikach
• Programowanie obiektowe
• Przeszukiwanie i sortowanie
• £¹czenie skryptów z bazami danych
• Testowanie i usuwanie b³êdów
• Programowanie wielow¹tkowe
• Realizacjê zadañ administracyjnych
• Obs³ugê interfejsów u¿ytkownika
• Tworzenie aplikacji sieciowych
• Przetwarzanie dokumentów XML
Ka¿dy programista Pythona, niezale¿nie od umiejêtnoœci,
znajdzie w tej ksi¹¿ce coœ dla siebie
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Wstęp ........................................................................................................................................15
Rozdział 1. Tekst .......................................................................................................................31
1.1. Przetwarzanie tekstu po jednym znaku
1.2. Konwersja pomiędzy znakami a kodami numerycznymi
1.3. Sprawdzanie, czy obiekt jest podobny do ciągu znaków
1.4. Wyrównywanie ciągów znaków
1.5. Usuwanie spacji z końców ciągu znaków
1.6. Łączenie ciągów znaków
1.7. Odwracanie kolejności słów lub znaków w ciągu znaków
1.8. Sprawdzanie, czy ciąg znaków zawiera pewien zestaw znaków
1.9. Upraszczanie użycia metody translate
1.10. Filtrowanie ciągu znaków na podstawie znaków z określonego zbioru
1.11. Sprawdzanie, czy ciąg znaków jest tekstowy czy binarny
1.12. Kontrolowanie wielkości znaków
1.13. Odczytywanie podciągów
1.14. Zmiany wcięć w wielowierszowym ciągu znaków
1.15. Rozszerzanie i zawężanie tabulacji
1.16. Wstawianie zmiennych do ciągu znaków
1.17. Wstawianie zmiennych do ciągu znaków w Pythonie 2.4
1.18. Podmiana wielu wzorców w jednym przebiegu
1.19. Sprawdzanie końcówek w ciągu znaków
1.20. Obsługa tekstów międzynarodowych za pomocą Unikodu
1.21. Konwertowanie pomiędzy Unikodem i prostym tekstem
1.22. Wypisywanie znaków Unikodu na standardowe wyjście
1.23. Kodowanie danych w formatach XML i HTML
1.24. Przygotowanie ciągu znaków nierozróżniającego wielkości liter
1.25. Konwertowanie dokumentów HTML na zwykły tekst na terminalu uniksowym
37
38
39
41
42
42
45
47
50
52
55
57
58
61
63
65
67
69
72
73
76
78
79
82
85
3
Rozdział 2. Pliki .......................................................................................................................89
2.1. Czytanie z pliku
2.2. Zapisywanie do pliku
2.3. Wyszukiwanie i podmiany tekstu w pliku
2.4. Odczytanie z pliku określonego wiersza
2.5. Zliczanie wierszy w pliku
2.6. Przetwarzanie wszystkich słów z pliku
2.7. Wejście i wyjście o dostępie swobodnym
2.8. Aktualizowanie pliku o dostępie swobodnym
2.9. Odczytywanie danych z plików .zip
2.10. Obsługa plików .zip wewnątrz ciągu znaków
2.11. Archiwizowanie drzewa plików w skompresowanym pliku .tar
2.12. Wysyłanie danych binarnych na standardowe wyjście w systemach Windows
2.13. Stosowanie składni podobnej do składni obiektów iostream z języka C++
2.14. Przewijanie pliku wejściowego do początku
2.15. Przystosowywanie obiektów plikopodobnych
do obiektów rzeczywistych plików
2.16. Przeglądanie drzew katalogów
2.17. Zamiana jednego rozszerzenia plików na inne w całym drzewie katalogów
2.18. Wyszukiwanie pliku na podstawie ścieżki wyszukiwania
2.19. Wyszukiwanie plików na postawie ścieżki wyszukiwania i wzorca
2.20. Wyszukiwanie plików zgodnie ze ścieżką wyszukiwania Pythona
2.21. Dynamiczne modyfikowanie ścieżki wyszukiwania Pythona
2.22. Wyznaczanie ścieżki względnej z jednego katalogu do drugiego
2.23. Odczytywanie znaków niebuforowanych w sposób niezależny od platformy
2.24. Zliczanie stron dokumentów PDF w systemie Mac OS X
2.25. Modyfikowanie atrybutów plików w systemach Windows
2.26. Pobieranie tekstu z dokumentów OpenOffice.org
2.27. Pobieranie tekstu z dokumentów Microsoft Word
2.28. Blokowanie plików za pomocą międzyplatformowego API
2.29. Wersjonowanie nazw plików
2.30. Wyliczanie sum kontrolnych CRC-64
93
97
98
99
100
103
105
106
108
110
111
113
114
115
118
119
121
122
123
124
125
127
129
130
131
132
133
134
136
138
Rozdział 3. Czas i pieniądz ....................................................................................................141
3.1. Wyliczanie dnia jutrzejszego i wczorajszego
3.2. Którego był ostatni piątek?
3.3. Wyliczanie przedziału czasu i zakresu dat
3.4. Sumowanie czasów trwania piosenek
3.5. Wyznaczanie liczby dni roboczych pomiędzy dwoma datami
3.6. Automatyczne wyznaczanie dat świąt
3.7. Elastyczne odczytywanie dat
147
149
151
152
153
155
158
4
|
Spis treści
3.8. Sprawdzanie, czy aktualnie mamy czas letni czy zimowy
3.9. Konwersja stref czasowych
3.10. Powtarzanie wywołania polecenia
3.11. Tworzenie terminarza poleceń
3.12. Arytmetyka dziesiętna
3.13. Formatowanie liczb dziesiętnych jako waluty
3.14. Python jako prosta maszyna sumująca
3.15. Sprawdzanie sumy kontrolnej karty kredytowej
3.16. Sprawdzanie kursów wymiany walut
159
160
162
163
165
167
170
173
174
Rozdział 4. Skróty ...................................................................................................................177
4.1. Kopiowanie obiektu
4.2. Konstruowanie list za pomocą list składanych
4.3. Zwracanie elementu listy, o ile istnieje
4.4. Przeglądanie w pętli elementów sekwencji i ich indeksów
4.5. Tworzenie list bez współdzielenia referencji
4.6. Spłaszczanie zagnieżdżonej sekwencji
4.7. Usuwanie lub przestawianie kolumn na liście wierszy
4.8. Transponowanie tablic dwuwymiarowych
4.9. Pobieranie wartości ze słownika
4.10. Dodawanie pozycji do słownika
4.11. Budowanie słownika bez nadużywania cudzysłowów
4.12. Budowanie słownika na podstawie listy kluczy i wartości
4.13. Wydobywanie podzbioru elementów słownika
4.14. Odwracanie słownika
4.15. Wiązanie kilku wartości z kluczami słownika
4.16. Stosowanie słowników do wywoływania metod lub funkcji
4.17. Wyszukiwanie sum i części wspólnych słowników
4.18. Kolekcja elementów nazwanych
4.19. Przypisywanie i testowanie za pomocą jednej instrukcji
4.20. Stosowanie w Pythonie instrukcji printf
4.21. Losowe wybieranie elementów z zadanym prawdopodobieństwem
4.22. Obsługiwanie wyjątków wewnątrz wyrażeń
4.23. Sprawdzanie, czy nazwa jest zdefiniowana w danym module
179
182
184
185
186
188
191
192
194
196
197
199
201
203
204
206
208
210
212
214
215
217
219
Rozdział 5. Szukanie i sortowanie ....................................................................................... 221
5.1. Sortowanie słownika
5.2. Sortowanie listy ciągów znaków bez uwzględniania wielkości liter
5.3. Sortowanie listy obiektów na podstawie ich atrybutów
5.4. Sortowanie kluczy lub indeksów na podstawie związanych z nimi wartości
5.5. Sortowanie ciągów znaków zawierających liczby
226
227
229
231
234
Spis treści
|
5
5.6. Przetwarzanie wszystkich elementów listy w kolejności losowej
5.7. Utrzymywanie porządku w sekwencji
w czasie dodawania do niej nowych elementów
5.8. Pobieranie kilku najmniejszych elementów sekwencji
5.9. Wyszukiwanie elementów w sekwencji posortowanej
5.10. Wybieranie n-tego najmniejszego elementu w sekwencji
5.11. Algorytm quicksort w trzech wierszach kodu
5.12. Wykonywanie częstych testów obecności elementów sekwencji
5.13. Wyszukiwanie podsekwencji
5.14. Wzbogacanie typu dict o możliwość wprowadzania ocen
5.15. Sortowanie nazwisk i rozdzielanie ich za pomocą inicjałów
235
237
239
241
243
246
249
251
253
257
Rozdział 6. Programowanie obiektowe .............................................................................. 259
6.1. Konwertowanie między skalami temperatury
6.2. Definiowanie stałych
6.3. Ograniczanie dodawania atrybutów
6.4. Łączenie wyszukiwań danych w słowniku
6.5. Automatyczne delegacje jako alternatywa dla dziedziczenia
6.6. Delegowanie metod specjalnych w obiektach proxy
6.7. Implementowanie krotek z nazywanymi elementami
6.8. Unikanie stosowania powtarzalnych metod dostępu do właściwości
6.9. Tworzenie szybkiej kopii obiektu
6.10. Przechowywanie referencji metod powiązanych
bez wstrzymywania mechanizmu oczyszczania pamięci
6.11. Implementowanie bufora cyklicznego
6.12. Wykrywanie dowolnych zmian stanu egzemplarza
6.13. Sprawdzanie, czy obiekt ma wymagane atrybuty
6.14. Implementowanie wzorca Projektu Stanu
6.15. Implementowanie wzorca projektowego Singleton
6.16. Zastępowanie wzorca projektowego Singleton idiomem Borg
6.17. Implementowanie wzorca projektowego Obiektu Zerowego
6.18. Automatyczne inicjowanie zmiennych egzemplarzy
na podstawie argumentów metody __init__
6.19. Wywoływanie metody __init__ w klasie bazowej, jeśli taka metoda istnieje
6.20. Spójne i bezpieczne kooperatywne wywołania metod w klasach nadrzędnych
266
268
270
272
274
277
280
282
284
286
289
292
295
299
301
302
307
310
312
315
Rozdział 7. Trwałość danych i bazy danych ..........................................................................317
7.1. Serializowanie danych za pomocą modułu marshal
7.2. Serializowanie danych za pomocą modułów pickle i cPickle
7.3. Stosowanie kompresji w połączeniu z serializacją
7.4. Wykorzystanie modułu cPickle wobec klas i ich egzemplarzy
320
322
325
326
6
|
Spis treści
Plik z chomika:
Ksiazki_20
Inne pliki z tego folderu:
Algorytmy_Data_Science_Siedmiodniowy_przewodnik_Wydanie_II_aldas2.pdf
(4601 KB)
Algorytmy_dla_bystrzakow_algoby.pdf
(2441 KB)
Automatyzacja_nudnych_zadan_z_Pythonem_Nauka_programowania_autopy.pdf
(1606 KB)
Czysty_kod_w_Pythonie_czykop.pdf
(2698 KB)
Aplikacje_internetowe_z_Django_Najlepsze_receptury_apindj.pdf
(1038 KB)
Inne foldery tego chomika:
3ds max
Access
Acrobat
After Effects
Agile - Programowanie
Zgłoś jeśli
naruszono regulamin