From: Hoppke Newsgroups: pl.comp.os.linux Subject: Re: perl i python Message has been fingerprinted by azbest: > choc zapytac musze o jedno, zeby nie wpakowac sie w slepa uliczke i nie > studiowac tego jezyka 3 lata. Jaka taktyke, jak uczyc sie go ? Czy > kartka po kartce z doc'ow ? czy moze jest jakas lepsza i prostsza sciezka? Pójdź tu: http://www.python.org/doc/ Zacznij od tego tutoriala (króciutki): http://docs.python.org/tut/tut.html Próbuj pisać jakieś proste skrypty. Odpal sobie ten lokalny serwer pydoc i przeglądnij opisy standardowych modułów żeby załapać jakie możliwości masz "w defaulcie" (żeby przypadkiem nie pisać czegoś od nowa) Pisz inne rzeczy. Bardziej wyczerpujące opisy języka znajdziesz tu http://docs.python.org/lib/lib.html i tu http://docs.python.org/ref/ref.html Hmm, co jeszcze... Korzystaj w razie czego z trybu interaktywnego, to dobry sposób na sprawdzanie działania warunków, pętli itp. Warto pamiętać o dir() - to sposób na przejrzenie zawartości klasy/środowiska/modułu. Np. możesz załadować moduł "sre": >>> import sre potem możesz dostać listing "obiektów" dostępnych poprzez ten moduł: >>> dir(sre) co zwróci np. taką listę: ['DEBUG', 'DOTALL', 'I', 'IGNORECASE', 'L', 'LOCALE', 'M', 'MULTILINE', 'S', 'Scanner', 'T', 'TEMPLATE', 'U', 'UNICODE', 'VERBOSE', 'X', '_MAXCACHE', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__version__', '_cache', '_cache_repl', '_compile', '_compile_repl', '_expand', '_join', '_pattern_type', '_pickle', '_subx', 'compile', 'copy_reg', 'error', 'escape', 'findall', 'finditer', 'match', 'purge', 'search', 'split', 'sre_compile', 'sre_parse', 'string', 'sub', 'subn', 'sys', 'template'] Znając konwencje pythona łatwo odróżnisz stałe, zmienne i funkcje. Większość obiektów pythona posiada też tzw. "doc strings", opisujące ich działanie: >>> print sre.compile.__doc__ Compile a regular expression pattern, returning a pattern object. dir() jest fajne np. do poznawania możliwości standardowych typów danych: >>> a=12 >>> b="ala ma kota" >>> dir(a) ['__abs__', '__add__', '__and__', '__class__', '__cmp__', '__coerce__', '__delattr__', '__div__', '__divmod__', '__doc__', '__float__', '__floordiv__', '__getattribute__', '__getnewargs__', '__hash__', '__hex__', '__init__', '__int__', '__invert__', '__long__', '__lshift__', '__mod__', '__mul__', '__neg__', '__new__', '__nonzero__', '__oct__', '__or__', '__pos__', '__pow__', '__radd__', '__rand__', '__rdiv__', '__rdivmod__', '__reduce__', '__reduce_ex__', '__repr__', '__rfloordiv__', '__rlshift__', '__rmod__', '__rmul__', '__ror__', '__rpow__', '__rrshift__', '__rshift__', '__rsub__', '__rtruediv__', '__rxor__', '__setattr__', '__str__', '__sub__', '__truediv__', '__xor__'] >>> dir(b) ['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__str__', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'replace', 'rfind', 'rindex', 'rjust', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] Sam język (składnia) jest bardzo prosty do załapania, potem tylko potrzeba trochę czasu właśnie na poznanie standardowych klas itp. Ale to idzie bardzo prosto, bo python jest bardzo fajny do poznawania run-time. Wystarczy przeczytać tutorial a potem próbować coś pisać. -- ? Chcesz wiedzieć co Hoppke jadł na śniadanie? Nie? ? A może interesuje Cię co porabia jego urojona wiewiórka? Też nie? Mimo wszystko obejrzyj ten jedyny w swoim rodzaju ChangeBlog: .°.°.°.°.°.°.: http://dobremiasto.net/~hoppke/ :.°.°.°.°.°.°.