tag:blogger.com,1999:blog-4468421024394811861.post3563566749268411524..comments2023-03-21T11:29:24.679+01:00Comments on KrzysztofZalewski::Blog: Bajzel w PythonieUnknownnoreply@blogger.comBlogger7125tag:blogger.com,1999:blog-4468421024394811861.post-46840916078143016342008-12-30T14:34:00.000+01:002008-12-30T14:34:00.000+01:00Jak więc widzisz, jest to po prostu jakiś konieczn...Jak więc widzisz, jest to po prostu jakiś konieczny kompromis, który ciężko jest w którąkolwiek stronę przeskoczyć... :)Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-4468421024394811861.post-40865537618013178282008-12-30T14:06:00.000+01:002008-12-30T14:06:00.000+01:00Więc może tak podstawowe moduły jak math, powinny ...Więc może tak podstawowe moduły jak math, powinny być umieszczone w __builtin__ ? Chociaż zbliża to wtedy Pythona w stronę np. Ruby, który ma masę klas/funkcji w głównej przestrzeni nazw.Anonymoushttps://www.blogger.com/profile/09222082532154278936noreply@blogger.comtag:blogger.com,1999:blog-4468421024394811861.post-34428998044239172022008-12-30T13:57:00.000+01:002008-12-30T13:57:00.000+01:001. Bez sensu. Cały Python jest "zrobiony" tak, że ...1. Bez sensu. Cały Python jest "zrobiony" tak, że wszelkiego rodzaju operatory etc są 'cukrem syntaktycznym' (syntactic sugar) na różnego rodzaju funkcje i metody. ** jest operatorem, takim jak +, -, / czy * - skoro chcesz wywalić jeden operator, to pozostałe wywalamy też, tak?<BR/><BR/>2. Jak już mówiłem, też nie lubię len ().<BR/><BR/>3. więc isupper () etc to zaszłość historyczna na którą nikt wcześniej nie zwrócił uwagi ;) mi nie przeszkadza :PAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-4468421024394811861.post-15725189648165662622008-12-30T13:44:00.000+01:002008-12-30T13:44:00.000+01:001. No to w takim razie wywalamy oba :)2. Uzasadnie...1. No to w takim razie wywalamy oba :)<BR/><BR/>2. Uzasadnienie nieważne, mogliby to "ładniej" rozwiązać.<BR/><BR/>3. Nie mogę znaleźć przykładów, ale "Function names should be lowercase, with words separated by underscores" (PEP 8) więc powinno być is_upper, is_title itd.Anonymoushttps://www.blogger.com/profile/09222082532154278936noreply@blogger.comtag:blogger.com,1999:blog-4468421024394811861.post-3497482446891500032008-12-30T13:07:00.000+01:002008-12-30T13:07:00.000+01:001. Żeby to miało sens, musiałby zostać dorobiony j...1. Żeby to miało sens, musiałby zostać dorobiony jakiś operator do math.sqrt () :)<BR/><BR/>2. Nie jestem pewien czy takie uzasadnienie było - nie pamiętam teraz. Musiałbyś poszukać po PEPach.<BR/><BR/>3. Daj przykłady ;) Ale takie ktore jeszcze w Py3k istnieją ;)Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-4468421024394811861.post-75164871104731250342008-12-30T13:03:00.000+01:002008-12-30T13:03:00.000+01:001. To niech sqrt będzie też dostępne globalnie. Al...1. To niech sqrt będzie też dostępne globalnie. Albo wszystko, albo nic :)<BR/><BR/>2. Ta metoda (__len__) i tak jest zaimplementowana w każdym obiekcie<BR/><BR/>3. Chodziło o przykład jakiejkolwiek funkcji, w której wyrazy odzielone są _Anonymoushttps://www.blogger.com/profile/09222082532154278936noreply@blogger.comtag:blogger.com,1999:blog-4468421024394811861.post-90157009683522375712008-12-30T12:58:00.000+01:002008-12-30T12:58:00.000+01:001. pow () jest dostępne w globalnej przestrzeni na...1. pow () jest dostępne w globalnej przestrzeni nazw, bo jest dostępny globalnie operator ** (czyli potęgowanie), a który to operator jest cukrem syntaktycznym dla funkcji pow () :)<BR/><BR/>2. gdzieś kiedyś było wyjaśnienie czemu len () jest funkcją (chyba chodziło o brak potrzeby implementowania w każdym obiekcie tej metody czy coś). Ale sam tego nie lubię ;)<BR/><BR/>3. W Py3k nie ma już raw_input ;)<BR/><BR/>Mi się bardziej nie podoba inna zmiana:<BR/>{'a': 'b', 'c': 'd'} - stworzy słownik<BR/>{'a', 's', 'd'} - stworzy set () (w Py3k)<BR/><BR/>:)Anonymousnoreply@blogger.com