Posts

Vim jako Python IDE

Image
Wstęp Trochę mi zajęło zabranie się za napisanie tego posta, ale oto jest. Mam nadzieję, że Ci się przyda. Post pisany trochę po to by utrwalić wiedzę, trochę po to, aby pomóc innym, którzy chcą spróbować Vima i trochę po to, by mieć coś ciekawego na tym blogu. Zacznę od tego dlaczego nie inne edytory. Wypróbowałem naprawdę mnóstwo różnych IDE do Pythona, zaczynając od Eclipse , poprzez PyCharm , Komodo , erci5 , Sublime Text 2 i wiele wiele innych, na Wingware kończąc. Wszystko z czego korzystałem po pewnym czasie albo i na początku "muliło", miało mnóstwo opcji z których nie skorzystałem i pewnie nie skorzystam nigdy w życiu, zaśmiecało mi system, dużo ważyło, etc. A odpalenie kilku instancji programu, tak aby można było porobić coś jeszcze na komputerze? Zapomnij. Dlatego zacząłem szukać czegoś lekkiego, czegoś co będę mógł szybko odpalić z terminala i od razu pracować, czegoś co będę mógł w łatwy sposób odpalić na innej maszynie, czegoś co jest darmowe, czegoś co

TDFPronunciation - nowa wersja

Image
Dodałem w skrypcie korzystanie z wątków, dzięki temu długość oczekiwania na zakończenie skryptu dla np. sześciu słów spadło z 5.4 sekund do 1.3 sekundy. Link do nowej wersji: TDFPronunciation .

RandomWords 0.1.7

Image
Puściłem przed chwilą na githuba i pypi nową wersję RandomWords 0.1.7. Główna zmiana to porzucenie modułu pickle i zastąpienie go modułem ujson , o którym ostatnio pisałem . Zrobiłem testy i jasno wyszło, że o wiele szybciej będę wczytywał dane za pomocą ujsona. Poniżej zamieściłem wykresy z testów. Każdy był przeprowadzony sto razy. Wykres szybkości wczytywania danych dla nowej wersji RandomWords. We wszystkich klasach widać wyraźny wzrost prędkości ładowania danych przy tworzeniu instancji.

Pobieranie słów z The Free Dictionary

Image
Do nauki języka i nie tylko, korzystam z programu  Anki . Przy okazji bardzo go polecam. Problem na jaki dzisiaj natrafiłem był taki, iż w większości decków stworzonych przez userów nie ma dźwięków i obrazków. O ile brak obrazka jeszcze przejdzie, to brak przykładu wymowy danego słowa już nie za bardzo. Jak się domyślasz znudziło mnie ciągłe przełączanie się między Anki i Google Translate czy The Free Dictionary w celu usłyszenia poprawnej wymowy danego słowa, więc postanowiłem napisać skrypt, który będzie za mnie szukał danego słowa, pobierał go w formacie mp3 i zapisywał do katalogu sounds, po czym ręcznie będę go mógł dodać gdzie zechcę, np. do Anki ;) Skrypt wrzuciłem na githuba: TDFPronunciation . Jak z niego korzystać znajdziesz w pliku README.md . Po pobraniu słowa, skrypt zapisze go w katalogu TDFPronunciation/sounds/ . Możesz sam utworzyć katalog sounds  po sklonowaniu repo, jednak nic się nie stanie gdy go nie będziesz miał, skrypt to wykryje i sam go stworzy. Przed ka

Ultra szybki JSON, czyli ujson

Image
Kilkanaście godzin temu natknąłem się na moduł  ujson , który jest napisany w czystym C i może pochwalić się niebywałą szybkością :) Mimo, iż na stronie modułu są przedstawione testy z trzema innymi popularnymi modułami, sam również postanowiłem to sprawdzić. Moduł  ujson porównałem ze standardowym modułem w pythonie, czyli  json . Dane testowe Pierwsze dane to obiekt, z którym możemy się najczęściej spotkać przy codziennej pracy z różnego rodzaju api, natomiast do drugich danych wpisałem po prostu to co przyszło mi do głowy ;) test_data1 = {'status': True, 'msg': 'Message'} test_data2 = [{'name': 'tomislater', 'age': 24, 'sex': 'male'}, 8461, True, False, 8923, 7162, 1, 6, 7, None, [[True, False], ['!', '?']], 'yeah'] Serializacja do formatu JSON Do porównania obu bibliotek stworzyłem cztery funkcję. Po dwie do każdej. def test_json_data1(): return json.dumps(test_data1) def test_u