Próbując odczytać kodu źródłowego pliku csv.py
(jako przewodnik do wdrażania własną writer
klasę w innym kontekście) Okazało się, że znaczna część funkcjonalności w tym pliku jest z kolei importowane z czymś o nazwie _csv
:Co to jest "_csv" w języku Python?
from _csv import Error, __version__, writer, reader, register_dialect, \
unregister_dialect, get_dialect, list_dialects, \
field_size_limit, \
QUOTE_MINIMAL, QUOTE_ALL, QUOTE_NONNUMERIC, QUOTE_NONE, \
__doc__
Nie mogę znaleźć żadnego pliku o tej nazwie w moim systemie (w tym wyszukiwanie plików z zestawem atrybutów ukrytych), chociaż mogę zrobić import _csv
z powłoki Pythona.
Co to jest moduł i czy można go przeczytać?
Co ważniejsze, według [Jython docs] (http://www.jython.org/javadoc/org/python/modules/_csv/_csv.html), nigdy nie powinno się do niego bezpośrednio odwoływać. Właśnie dlatego csv.py importuje swoją funkcjonalność. – KBKarma
Dziękuję. To wyjaśnia również, dlaczego nie mogę znaleźć żadnego odniesienia do klasy Writera - "klasa" jest zaimplementowana w C. –
Hmm. Zakładam, że moduły są częścią dystrybucji źródłowej Pythona i że wynikowy kod obiektowy jest połączony z plikiem wykonywalnym Pythona? Nie mam ani podkatalogu Module, ani bardzo dużo kodu C w moim katalogu Python27 (tylko kilka plików w pakietach site). –