GIL w Pythonie – jeden „mikrofon” dla wielu wątków

Global Interpreter Lock (GIL) w Pythonie – co to jest, dlaczego istnieje i jaka czeka go przyszłość?

Python jest jednym z najpopularniejszych języków programowania. Kochamy go za prostą składnię i ogrom bibliotek. Jednocześnie od lat budzi emocje jeden element: Global Interpreter Lock (GIL). W skrócie to mechanizm, który w danym momencie dopuszcza do wykonania tylko jeden wątek kodu Pythona. W tym tekście wyjaśniam, skąd wziął się GIL, dlaczego wciąż istnieje, kiedy przeszkadza, […]
Czytaj dalej
Programa na bitmapową wiadomość

Czas Pythona: Bitmapowa wiadomość

Komputery to maszyny liczące, dla których istnieją tylko zera i jedynki, ale to pewnie już wiesz. Sprytni ludzie wymyślili, że można za pomocą tych dwóch cyfr zrobić jednak więcej niż tylko liczyć. Można zapisywać różne inne informacje, wykorzystując wszelakie działania na zerach i jedynkach. Jednym z ciekawych pomysłów był tekst, który mógł być tak zapisywany. […]
Czytaj dalej

Czas Pythona: Paradoks dnia urodzin

Paradoks dnia urodzin to zjawisko probabilistyczne, które wydaje się sprzeczne z intuicją. Polega na tym, że w grupie osób istnieje zaskakująco wysokie prawdopodobieństwo, że co najmniej dwie osoby będą miały urodziny tego samego dnia. Przykładowo, w grupie 23 osób prawdopodobieństwo wynosi aż 50,7%, a w grupie 70 osób – aż 99,9%. W tym artykule wyjaśnimy, […]
Czytaj dalej

Zmiana Częstotliwości Wpisów: Nowy Harmonogram Serii „Czas Pythona”

Drodzy Czytelnicy, Mam dla Was ważną informację dotyczącą naszej serii „Czas Pythona”. Ze względu na obecną sytuację w moim życiu osobistym, muszę dostosować harmonogram publikacji. Od teraz wpisy będą pojawiać się domyślnie co dwa tygodnie. Nie oznacza to jednak, że posty co tydzień to już przeszłość! Jeśli uda mi się wygospodarować dodatkowy czas, chętnie przygotuję […]
Czytaj dalej
Gra bajgle w Pythonie

Czas Pythona: Bajgle #2

Dziś kontynuujemy mikro serię artykułów o grze Bajgle w Python. Dokładniej będziemy dalej pisać skrypt ją realizujący, jeśli jeszcze nie czytałeś, to zapraszam do poprzedniego odcinka. Zatem dziś kontynuujemy Bajgle, czyli grę polegającą na dedukcji liczby. W ostatnim artykule skończyliśmy na 'podpętli' w pętli głównej. Dokładniej mieliśmy odczytywać odpowiedź gracza i zabezpieczyć się przed błędnymi […]
Czytaj dalej
gra bajgle w pythonie

Czas Pythona: Bajgle #1

Dziś zaczynamy nową serię postów pod tytułem Czas Pythona. Będzie to seria gdzie będziemy realizować konkretne projekty w Pythonie, by trochę potrenować w praktyce. W tej serii trochę się rozpiszę, bo i projekty podzielę na kilka artykułów, byś miał czas poszukać czegoś czasem na własną rękę. Zaczynamy od gry Bajgle w Pythonie. Jest to gra, […]
Czytaj dalej
cyberbezpieczeństwo dla opornych

Cyberbezpieczeństwo dla opornych – Wstęp

Niniejszym rozpoczynamy cykl publikowania materiałów z zakresu podstaw cyberbezpieczeństwa. W tym „Wstępie do cyberbezpieczeństwa” przedstawiamy najważniejsze zagadnienia związane z ochroną systemów komputerowych, sieci oraz danych przed cyberatakami i nieautoryzowanym dostępem. Co więcej, cyberbezpieczeństwo jest coraz bardziej istotne w dzisiejszym cyfrowym świecie, ponieważ zagrożenia stają się bardziej zaawansowane i powszechne. Podstawowe pojęcia i zagrożenia A zawarty […]
Czytaj dalej
Wyjątki i błędy w Pythonie

Myśląc o Pythonie: Błędy i wyjątki

Opowiedzmy sobie o dość podstaowej rzeczy. Jako ludzie, nie jesteśmy wcale doskonali i popełniamy błędy, coś czasem przeoczymy, coś nam nie do końca wyjdzie. Błądzić i mylić się ludzka rzecz, a programiści jak się okazuje to też ludzie. Zatem wymyślili coś by radzić sobie z błędami, czy tzw. wyjątkami. Porozmawiajmy zatem co to są błędy […]
Czytaj dalej
Moduły w języku programowania Python - nowe możliwości

Myśląc o Pythonie: Moduły

Python jest jednym z tych języków programowania, które wyróżniają się przejrzystością i prostotą. Ale co zrobić, gdy nasz projekt zaczyna rosnąć i pojawia się chaos w kodzie? Wtedy wchodzą na scenę moduły. Zacznijmy powieść o tej niezwykle przydatnej konsepcji jaką są moduły. Są to twory zwiększające przejrzystość i uporządkowanie projektów na całym świecie - a […]
Czytaj dalej
generatory w języku programowania Python

Myśląd o Pythonie: Generatory

Dziś kolejna koncepcja, po dekoratorach, trochę bardziej zaawansowana. Mianowicie generatory, czyli mechanizm pozwalający zatrzymać wykonywanie funkcji w dowolnym momencie i wznowić je później.. Możemy wyobrazić sobie funkcję wykonującą 1000 operacji lub przetwarzającą ogromne ilości danych - zamiast czekać na zakończenie całości operacji moglibyśmy 'zapauzować' wykonywanie. Innymi slowy, moglibyśmy wykonwać 10 operacji z 1000 i się […]
Czytaj dalej
Dekoratory w języku Python

Myśląc o Pythonie: Dekoratory

I przychodzi czas na Dekoratory i udekorowanie naszego kodu 🙂 Tworząc sobie radośnie funkcje, i przestrzegając przy tym zasady DIY można natrafić na problem, gdy przykładowo mamy funkcję x. Chcemy jednak mieć jeszcze jedną funkcję, robiącą praktycznie to samo co x, ale z pewnymi dodatkami. Nie chcemy też jednocześnie przepisywać jeszcze raz tego samego kodu. […]
Czytaj dalej
funkcja jako obiekt pierszej klasy

Myśląc o Pythonie: Funkcja jako obiekt pierwszej klasy

Powiedzmy sobie o kolejnej koncepcji, spotykanej nie tylko w języku Python. Mianowicie: funkcja jako obiekt pierwszej klasy. Co to właściwie znaczy? Jak już się zdążyliśmy przekonać, funkcje są obiektami. Dzięki temu możemy je potraktować jako wartość, podobnie jak liczby, ciągi znaków czy listy. Co z tego wynika? Przede wszystkim to, że funkcja sama w sobie […]
Czytaj dalej
identyczność i równoważność w Pythonie ilustracja

Myśląc o Pythonie: Identyczność oraz równość

Dziś będziemy zajmować się tytułowymi pojęciami, czyli porozmawiamy o tym co oznacza identyczność oraz równość. Pojęcia te, po tak długim czasie pracy z językiem Python, powinny wydać Ci się dość intuicyjne. Niemniej dziś trochę o nich porozmawiamy. Identyczność Identyczność to po prostu sytuacja, gdy mamy przykładowo referencję, do jednego i tego samego obiektu. Gdy pod […]
Czytaj dalej
Mutowalność danych

Myśląc o Pythonie: Mutowalność danych

Dziś powrócimy do tematu, który czasem mogło udać Nam się liznąć już w niektórych artykułach. Przykladem mógł być artykuł o listach, bowiem są one tworem powiązanym z dzisiejszym tematem posta - mutowalność. Mogło się to przewinąć na matematyce, razem z kombinatoryką. Komu więc wydało się to pojęcie znajome, to pewnie ma dobre skojarzenia 😉 W […]
Czytaj dalej
Python obiekt zmienna wartość

Myśląc o Pythonie: Obiekt, wartość i zmienna

Dziś dopowiedzmy sobie i uściślijmy kilka pojęć widocznych w tytule tego posta. Poruszymy temat obiektów, wartości i zmiennych, by podsumować sobie wiedzę, a także uściślić powyższe byty programistyczne. Są to jedne z podstawowych pojęć w programowania, wszak zmienne to jedna z rzeczy od których zwykle zaczynamy naukę programowania. W trakcie Naszej podróży już nie raz, […]
Czytaj dalej
obrazke dziedziczenie

Myśląc o Pythonie: Dziedziczenie

Z każdym kolejnym wpisem zagłębiamy się coraz bardziej w temat programowania obiektowego (OOP), a robi się coraz ciekawiej.. Jedna z takich ciekawych koncepcji to dziedziczenie. Dziedziczenie, jak się przekonamy, sporo Nam ułatwia, a także pozwala zaoszczędzić czas. Podobnie jak dziecko dziedziczy cechy po rodzicu, tak samo klasy mogą dziedziczyć po sobie. Możemy przyjąć że chcemy […]
Czytaj dalej
atrybut klasy

Myśląc o Pythonie: Atrybuty klasy

Z racji choroby mam trochę poślizg z postami, ale dziś mam dla Was kolejny post.. Dziś porozmawiamy o atrybutach klas, które są istotną koncepcją gdy przykładowo chcielibyśmy zrobić licznik instancji. Czyli licznik, który zlicza ile obiektów danej klasy zostało utworzonych- zwiększający się przy każdym utworzeniu obiektu. Mówiliśmy wcześniej o metodach i właściwościach, czyli o elementach […]
Czytaj dalej
Metody w Pytonie

Myśląc o Pythonie: Metody

Programowanie to pisanie kodu, a kodu tego po jakimś czasie zaczyna być dużo. By się w tym połapać, kod dzielimy, między innymi na funkcje. Specyficznym typem funkcji są zaś metody. Gdy bowiem rozmawialiśmy o funkcjach, powiedzieliśmy sobie, jak ważne one są. Funkcje są podstawowymi "cegiełkami" w programowani. Dzięki funkcjom możemy wydzielić dowolny kod odpowiedzialny za […]
Czytaj dalej
oop i konstuktor

Myśląc o Pythonie: Inicjalizer zwany konstruktorem

Mamy Naszą klasę i tutaj pojawia się pewna kwestia. Możemy bowiem na jej podstawie utworzyć obiekt i przypisać mu konkretne wartości do jego właściwości. Przykładowo mamy klasę Personi chcielibyśmy by miała ona imię i nazwisko. Tworzymy więc klasę z takimi właściwościami, a następnie konkretną osobę na jej podstawie i przypisujemy jej po utworzeniu takie konkretne […]
Czytaj dalej
oop klasy

Myśląc o Pythonie: OOP i klasy

Dziś wkroczmy w świat niesamowity! Wreszcie wkraczamy do świata współcześnie szeroko wykorzystywanego paradygmatu programowania. Jest to OOP, czyli nic innego jak programowanie obiektowe. Jest to absolutnie jedna z ważniejszych koncepcji w dzisiejszym programowaniu. Zrozumienie programowania obiektowego jest kluczowe. Popchnie to Cię w nowe rejony, dotąd niedostępne na tej ścieżce. OOP zmienia programy tak, że są […]
Czytaj dalej
scope - zasięg zmiennych

Myśląc o Pythonie: Scope

Ostatnio rozmawialiśmy sobie o bardzo ciekawej rzeczy jaką są funkcje anonimowe, zwane też lambda, dziś natomiast pociągniemy dalej temat funkcji, choć związany bardziej z czymś innym, a mianowicie - scope. Czym jest scope? Jest to po prostu angielskie słowo, oznaczające zasięg, w tym przypadku będzie to zasięg zmiennych. Wprowadzenie koncepcji funkcji, wymaga pochylenia się nad […]
Czytaj dalej
funkcje anonimowe czyli lambda

Myśląc o Pythonie: Lambda

Witajcie! Dla przypomnienia, ostatnio, symbolicznie, zamknęliśmy pewien rozdział w funkcjach. Mianowicie artykułem o returnie zamknęliśmy niejako podstawy podstaw. Jeśli chodzi o funkcje. Wiemy więc już o nich troszkę. Wiemy, że są bardzo ważną koncepcją w programowaniu - m.in. pomagają przestrzegać zasady DRY, ale nie tylko. 😉 "Funkcje to czasowniki w programowani" parafrazując klasyka 😉 Dziś […]
Czytaj dalej
logo python ze słowem return

Myśląc o Pythonie: return

I oto jesteśmy, docieramy wreszcie do kwestii kluczowej, na którą wyczekiwali wszyscy. Oto na scenę wchodzi wartość zwracana z funkcji, czyli return. Sporo czasu antenowego poszło dla wszelkich argumentów - tego co mamy na wejściu w funkcji. Funkcja potrzebuje też pewnej wartości na wyjściu. Można bowiem powiedzieć, że funkcja pewne wartości przyjmuje, robi na nich […]
Czytaj dalej
argumenty funkcji w Pythonie

Myśląc o Pythonie: Argumenty kluczowe i nie tylko

Z funkcjami, które ostatnio omawialiśmy, wiąże się inne zagadnienie, a mianowicie argumenty funkcji. Pamiętaj - functions are verbs of programming - i rzeczywiście tak jest, funkcje wykorzystujemy na okrągło, wszędzie, a ich argumenty (zamiennie zwane parametrami) są danymi na jakich pracują. Danymi jakie dostają z zewnątrz. Argument to bardzo ważna kwestia, bowiem dzięki nim właśnie […]
Czytaj dalej
Funkcje w Pythonie

Myśląc o Pythonie: Funkcje

Functions are like the verbs of programming Zdanie powyżej usłyszałem, gdy uczyłem się o funkcjach w PHP. Funkcje (nie tylko one) w każdym języku programowania są oczywiście podobną konstrukcją. Funkcje w Pythonie są po prostu, jak wiele innych rzeczy, minimalistyczne. Czym są zatem funkcje? Funkcja jest nazwanym blokiem kodu, który możemy ponownie wykorzystać. Takie wykorzystanie […]
Czytaj dalej
Zbory czyli set

Myśląc o Pythonie: Set

Dziś omówimy kolejną niesamowitą z kolekcji w języku Python, pomówimy bowiem o set w Pythonie, czyli zbiorach. Mówiąc ściślej zbiorach wartości - są nimi też listy czy słowniki, ale te zbiory są troszeczkę inne. Nie jest to bowiem zbiór par klucz-wartość. Czym więc jest set w Pythonie? Zacznijmy od początku. W matematyce mamy zbiory, wymieniamy […]
Czytaj dalej

Myśląc o Pythonie: Dictonaries

Dziś będziemy kontynuować Naszą przygodę. Ostatnim razem poznaliśmy tuples, dziś natomisto poznamy czym są dictonaries w Pythonie. Są to tzw. słowniki, potocznie zwane dictami. Dict to kolejna z kolei kolekcja w Pythonie, po listach i tuples. Charakteryzuje się ona tym, że przechowuje pary klucz wartość. Słowniki nie mają indeksu, tak jak inne kolekcje w języku […]
Czytaj dalej
Tuple w Pythonie

Myśląc o Pythonie: więcej o Tuples

W poprzednim odcinku zaczęliśmy sobie mówić o tuplach w Pythonie. Dziś zatem pociągniemy sobie ten temat dalej. Co wiemy o takiej konstrukcji jak tupla, w języku Python? Ano wiemy, że jest to kolekcja, która jest niemutowalna, dostęp do niej jest szybszy i ogólnie jest ciekawym tworem.
Czytaj dalej
Tuples w Pythonie

Myśląc o Pythonie: Tuples

W programowaniu jest obecnych wiele typów danych, które pomagają kategoryzować i rozróżniać różne rzeczy, jakie odzwierciedlamy w kodzie. Takie typy danych są trochę inaczej obecne w różnych językach. W Pythonie, również mamy ich trochę. Python, to język, który stoi typami danych nazywanymi zbiorczo kolekcjami. W kilku ostatnich postach mówiliśmy o takich kolekcjach. Listy, bo o […]
Czytaj dalej
Pyhon tworzący listy za pomocą list comprehension

Myśląc o Pythonie: List comprehension

Gdy mówimy o listach, nie sposób nie wspomnieć, choć niektórym się udaje, o tzw. list comprehension. Jest to taka "szybka lista", czyli trochę taki skrót na stworzenie listy. Warto też napomknąć, że list comprehension.. no, nie dotyczy tylko list. Mówiąc jaśniej, mamy też do dyspozycji inne kolekcje, gdzie taka metoda tworzenia też działa. Natomiast najczęściej […]
Czytaj dalej

Windows Server #11: Zalety Migracji Windows Server 2012 na 2022

Dziś opowiemy sobie o zaletach migracji z Windows Server 2012 na 2022
Czytaj dalej
listy w języku programowania Python

Myśląc o Pythonie: Więcej operacji na listach

Dziś kontynuujemy operacje na listach. Pomówimy sobie o tym co jeszcze możemy z taką listą zrobić i jakich operacji i metod możemy użyć względem listy. Jak wspomnieliśmy, listy w Pythonie są bardzo elastycznym typem danych. Dotychczas już robiliśmy kilka fajnych rzeczy z listami: odwracaliśmy je, sortowaliśmy, dodawaliśmy elementy do listy. Dziś, m.in. poznamy tzw. slicing. […]
Czytaj dalej
listy w pythonie operacje na listach

Myśląc o Pythonie: Operacje na listach

Dziś kontynuujemy temat list w pythonie. Mówiliśmy sobie, że są to bardzo elastyczne i pożyteczne struktury. Mogą przechowywać kilka typów na raz. Co więcej, możemy nawet tworzyć listy w listach. Natomiast kontynuując zagadnienie to, będziemy dziś wykonywać jakieś przykładowe, na nich, operacje. Możemy sobie stworzyć podstawową listę i wskazać, że zmienna przykładowo my_list będzie referencją […]
Czytaj dalej
listy w Pythonie

Myśląc o Pythonie: Listy w Pythonie

Hej, dziś wejdziemy trochę w świat struktur danych innych niż skalarne (proste), takie jak łańcuchy znaków jak, liczby całkowite czy zmiennoprzecinkowe. Dziś porozmawiamy sobie o strukturze nieco bardziej złożonej. Która potrafi przechowywać więcej niż jedną wartość. Oto przed wami listy, w Pythonie, które można też niektórzy nazywają tablicami (naleciałości z innych języków). Czym jest lista? […]
Czytaj dalej
nowoczesna serwerowania

Windows Server #10: Windows Server 2025

Witamy serdecznie Administratorzy Windows Server! W tym artykule przyjrzymy się nieco nowościom, które nadejdą wraz z Windows Server 2025. Pierwsza kompilacja Insider Preview dla systemu Windows Server 2025 została już udostępniona administratorom IT zarejestrowanym w programie Windows Insider. Więcej na ten temat dowiecie się tutaj! Według zapowiedzi możemy przewidywać, że system dostępny będzie jesienią 2024. […]
Czytaj dalej
funkcja range

Myśląc o Pythonie: Pętle - funkcja range

Ostatnio omawialiśmy bardzo istotną konstrukcję w Pythonie, ale i ogólnie w programowaniu, jaką jest pętla. Jest, a raczej są, bo jest ich kilka, konstrukcja, dzięki której, unikamy powtarzania. W programowaniu jest to dość istotna zasada, by właśnie unikać powtarzania. Pętle to jeden z podstawowych sposobów na spełnienie tzw. zasady DRY - Don't repeat yourself. Teraz […]
Czytaj dalej
group policy object

Windows Server #09: Group Policy Management

Gorąco witamy w kolejnym artykule dotyczącym Windows Server! Dziś spojrzymy nieco bliżej na Group Policy Management, znany również jako Group Policy Editor, jest to potężne narzędzie administracyjne dostępne w systemach Windows Server, które umożliwia konfigurowanie zasad grupowych w celu zarządzania wszystkimi aspektami na naszym Windows Server. W tym artykule przeanalizujemy, jak korzystać z Group Policy […]
Czytaj dalej
Python i jego pętle

Myśląc o Pythonie: Pętle

Kontynuujemy, tym razem pętle w Pythonie, poprzednio mówiliśmy o logice w Pythonie, umiemy też już wyświetlać tekst. Umiemy zapisywać informacje, a nawet decydować! Co natomiast jak chcielibyśmy kilka razy zapytać o coś użytkownika? Albo kilka razy powtórzyć konkretną część kodu? Przecież nie będziemy go przeklejać, musi być jakiś sprytniejszy sposób, prawda? Dziś więc będzie o […]
Czytaj dalej
ekosystem active directory

Windows Server #08: Kopia zapasowa w Windows Server Backup

Dziś przed nami znów temat backupów! Podstawa spokojnego snu administratora. W poprzednim artykule omówiliśmy sobie tworzenie backupów za pomocą narzędzia PowerShell zintegrowanego z Harmonogramem zadań. Jeśli jeszcze go nie widzieliście, to traficie do niego tu! Windows Server #07: Skrypt backupowy PowerShell - DotPy Natomiast w tym artykule przyjrzymy się temu, co oferuje nam Windows Server […]
Czytaj dalej

Windows Server #07: Skrypt backupowy PowerShell

Skrypt backupowy w PowerShell, czyli kontynuujemy naszą serię poświęconą Windows Server! Dzisiejszy artykuł będzie swego rodzaju instrukcją o stworzeniu skryptu backupowego, który później zamieścimy w harmonogramie zadań!
Czytaj dalej

Windows Server #06: AD - utrzymanie i problemy

A więc! Utrzymanie i problemy w AD! To nasz dzisiejszy temat, miło Cię znów tutaj gościć! W dzisiejszym cyfrowym świecie przedstawię Ci jakie mogą być codzienne problemy, oraz co robić aby jak najlepiej utrzymać nasze AD, aby było sprawnie i bezpiecznie.
Czytaj dalej

Windows Server #05: Bezpieczeństwo Danych w AD

W dzisiejszym artykule dowiesz się jak być bezpiecznym w świecie Windows i AD! Omówimy sobie również kilka przydatnych narzędzi oraz trików. Zachęcamy również do zapoznania się z poprzednimi artykułami o tematyce Windows Server, aby nic Cię nie ominęło! Archiwa Windows Server - DotPy A więc.. w dzisiejszych czasach, kiedy cyberzagrożenia stale ewoluują, bezpieczeństwo w Active […]
Czytaj dalej

Windows Server #04: Użytkownicy i obiekty w Active Directory

Dziś znów weźmiemy na tapet Active Directory (AD). Jak już wiemy z poprzednich artykułów – jest to potężny system zarządzania tożsamością i dostępem, który jest integralną częścią środowisk Windows Server. Efektywne zarządzanie użytkownikami oraz innymi obiektami w AD ma zasadnicze znaczenie dla utrzymania bezpieczeństwa, organizacji oraz ułatwienia obsługi infrastruktury. Warto zaznaczyć, że skuteczność zarządzania użytkownikami […]
Czytaj dalej
Okładka z komputerem i symbolem bomby

Python Praktyka: Tworzenie Miniprojektu - Odliczający Zegar

Stwórz odliczający zegar w Pythonie! Dowiedz się, jak wykorzystać swoje umiejętności programowania do stworzenia praktycznego miniprojektu. Obejrzyj nasz tutorial na YouTube!
Czytaj dalej

Windows Server #3: Active Directory – Instalacja roli Active Directory Domain Services (AD DS)

W tym wpisie weźmiemy pod lupę instalację Active Directory Domain Services (AD DS). Jest to kluczowa rola w systemie Windows Server. Pozwala na sprawną organizację zarządzaniem zasobami sieciowymi, co ułatwia życie administratorom. Oferuje dzięki temu szereg korzyści i funkcji. Dziś dowiemy się o jakich mowa! A więc jakie możliwości? AD DS umożliwia centralne zarządzanie użytkownikami […]
Czytaj dalej

Windows Server #2: Active Directory - Konfiguracja i Zarządzanie

Dziś zajmiemy się tematem Active Directory (AD) - jednym z kluczowych elementów w świecie Windows Server. W tym artykule chciałbym pokrótce omówić, jak zabrać się za konfigurację tego narzędzia i skutecznie nim zarządzać. Rozbijemy temat na 6 najważniejszych zagadnień. Instalacja roli Active Directory Domain Services (AD DS) Zaczynamy od instalacji kluczowej wręcz roli na Active […]
Czytaj dalej
Komputer z kodem na ekranie

Myśląc o Pythonie: Boolean i operatory logiczne

W dzisiejszym artykule skupimy się na jednym z najbardziej fundamentalnych aspektów programowania – logice, a dokładniej na typie danych boolean w Pythonie, i operatorach logicznych. Logika, będąca sercem informatyki i kluczowym elementem programowania, wywodzi się z matematyki, ale nie martw się – jej zrozumienie jest znacznie prostsze, niż może się wydawać. Na początku warto zrozumieć, […]
Czytaj dalej
Facet myślący o języku Python

Myśląc o Pythonie: If - ciąg dalszy

Pociągnijmy dalej temat instrukcji warunkowych (jeśli nie wiesz co to, odsyłam do poprzedniego wpisu), popularnie zwanych ifami, bo i na tym słówku się opierają. Poznaliśmy dwa elementy, prócz bloku if, poznaliśmy też blok else. Co pozwala nam na pójście dwiema ścieżkami, albo warunek jest spełniony, albo nie. Nie jesteśmy jednak ograniczeni tak ubogimi możliwościami. Gdy […]
Czytaj dalej
Kod programu

Jak komputer wykonuje program komputerowy.

Wszystko rozbija się o dwa główne komponenty, bez których dzisiejsze komputery nie mają raczej racji bytu. Mowa o pamięci oraz procesorze. Ogólne zasady ich współpracy są bardzo proste. Pamięć odpowiada za przechowywanie instrukcji dla procesora, które ten pobiera, przetwarza, a później przesyła spowrotem do pamięci, ale tym razem do szuflady dedykowanej dla danych, a nie […]
Czytaj dalej
Facet myślący o języku Python

Myśląc o Pythonie: Instrukcja warunkowa - If - wprowadzenie.

Nadszedł czas na jedną z ważniejszych instrukcji. Jest to mianowicie instrukcja warunkowa if co z angielskiego tłumaczymy jako jeżeli - jeżeli warunek jest spełniony, jeżeli dane wyrażenie ma wartość True, to wykonaj pewną czynność. Podstawa koncepcji kontroli przepływu. Podstawa koncepcji podejmowania decyzji - jeśli coś to coś.
Czytaj dalej

Myśląc o Pythonie: Porównywanie wartości

Ahoj! Dziś przywywam do Ciebie, z jednym, z niemniej ważnych tematów, albowiem pomówimy sobie o porównywaniu wartości. Jest to ważny temat, jeśli chodzi o podejmowanie decyzji przez komputer (np. wpuścić użytkownika do systemu czy nie) i wykorzystywaniu instrukcji warunkowej - tak zwanego "ifa". Koncepcja podejmowania decyzji jest niezwykle istotna, zatem porównywanie wartości też takie będzie. […]
Czytaj dalej

Myśląc o Pythonie: Formatowanie string

Hejka, dziś będzie dość krótko, omówimy sobie jeszcze jedną rzecz związaną z łańcuchami znaków w Pythonie (w innych językach też występują podobne zjawiska), czyli formatowanie string - co to takiego? Nic innego jak nakłonienie łańcucha znaków, by wyglądał dokładnie w taki sposób, jak oczekujemy. Mamy różne metody formatowania string w Pythonie, tutaj omówimy sobie tylko […]
Czytaj dalej
Facet myślący o języku Python

Myśląc o Pythonie: Konwersja typów

Dziś trochę nawiążemy do poprzedniego posta. Zajmiemy się bowiem, bardzo istotnymi koncepcjami, mającymi też co nieco wspólnego z naszym inputem. Będzie to coś, z czym do czynienia ma, praktycznie na co dzień, każdy programista - chodzi o typy wartości. Już wiemy, że mamy różne typy; mamy numbers, mamy string - w tych numbers mamy, na […]
Czytaj dalej
Facet myślący o języku Python

Myśląc o Pythonie: Input w konsoli

Praktycznie każdy program potrzebuje tzw. operacji wejścia/ wyjścia. Bez tego, program działałby sam dla siebie, nie byłoby żadnych interakcji ze światem zewnętrznym, z użytkownikiem. Jest to oczywiście bardzo szeroki temat. Operacje wejścia to może być np. odczyt z pliku, odczytanie zawartości z bazy, wysłanie żądania i odczytanie zawartości z jakiegoś serwera - tutaj mamy ogrom […]
Czytaj dalej
Facet myślący o języku Python

Myśląc o Pythonie: Komentarze

W naszym kursie nadszedł czas na kilka ważnych rzeczy, które już na tym początkowym etapie powinny być omówione. One wiele razy pewnie się będą jeszcze przewijać. Są to pewny ważne koncepcje, ważne techniki pracy, które powinieneś znać jako programista Python. Pierwsza ważna rzecz, to użycie komentarzy. Komentarze w kodzie pełnią niezwykle ważną rolę, za ich […]
Czytaj dalej

Myśląc o Pythonie: Testowanie stringów

Jeszcze jednym, dość ważnym, tematem przy stringach, jest "testowanie string" pod kątem różnych właściwości. Takie stringi to często dane pochodzące z zewnątrz. Dane wprowadzone do jakiegoś formularza. Dane z bazy. Dane z jakiegoś zewnętrznego zasobu, np. z pliku. Bardzo często takie dane są sprawdzane na wszelkie sposoby. Jest wykonywana tzw. walidacja, zanim cokolwiek więcej z […]
Czytaj dalej

Myśląc o Pythonie: Stringi cz.2

Dziś kontynuujemy temat łańcuchów znaków, czyli po prostu tekstu w Pythonie. Należy jednak wspomnieć, że ta koncepcja rozciąga się na wiele innych języków programowania, nie mówimy tutaj zatem tylko o Pythonie. W Pythonie mamy dostępną wielką ilość przetwarzania stringów, czyli po prostu wykonywania na nich różnych operacji. Zacznijmy od podstaw. Operacje na stringach Rozpoczniemy od […]
Czytaj dalej

Myśląc o Pythonie: tekst czyli string cz.1

Program często komunikuję się z użytkownikiem, a robi to za pomocą tekstu. Tekst jest w programach wyświetlany, wprowadzany czy przetwarzany, w językach programowania teksty to często po prostu łańcuchy/ tablice znaków. Nazywamy je stringami. W Pythonie mamy także do czynienia ze stringami, i możemy się nimi fajnie bawić - mamy dużo metod do przetwarzania stringów. […]
Czytaj dalej
Facet myślący o języku Python

Myśląc o Pythonie: Operacje arytmetyczne

Skoro w Pythonie mamy różne wartości liczbowe, obiekty, które reprezentują liczby. No to na pewno mamy możliwość wykonywania na nich pewnych operacji. W końcu w jakimś celu tych liczb używamy, a robimy to właśnie po to, by dynamicznie wyliczyć pewien rezultat. Operator Operacje na obiektach robimy m.in. za pomocą opratorów, dla liczb będą to operatory […]
Czytaj dalej
Facet myślący o języku Python

Myśląc o Pythonie: Liczby int i float

Wspominaliśmy trochę o zmiennych, czyli pudełkach w pamięci, które mogą przechowywać różne rzeczy - choć w Pythonie zmienna to raczej coś co zawiera informacje gdzie jest pudełko np. z jedynką. No właśnie, w programach przechowujemy dane różnego typu, bo różne rzeczy mogą się nam przydać. Przykładowo mamy tekst (nasze stringi), ale mamy także liczby. No […]
Czytaj dalej
Facet myślący o języku Python

Myśląc o Pythonie: Nazewnictwo

Każdy język programowania ma pewne obostrzenia, co do nazewnictwa różnego typu struktur, czy to zmiennych, czy to funkcji, a może klas, czy innych obiektów. Wynika to między innymi z tego, że kompilatory czy interpretery muszą być w stanie rozróżnić co jest czym, czy coś jest właśnie jakimś nazwanym przez Nas obiektem, czy po prostu słowem […]
Czytaj dalej
Facet myślący o języku Python

Myśląc o Pythonie: Zmienne, wartości i funkcja print

Wreszcie! Możemy na serio zacząć naukę, nie bawiąc się w jakieś konfiguracje! No to jedziemy, uruchommy sobie Naszego Pycharma lub inny edytor kodu (jeśli nie wiesz o co chodzi to odsyłam tutaj). I jedziemy z kodem! Zmienne i ich wartości Młodość, lekcja matematyki i pamiętne obliczanie X, pamiętasz to? Chyba każdy, z Nas, pamięta iksy […]
Czytaj dalej

Windows Server #1: Active Directory - Budowa

Dziś nieco więcej o Active Directory - usłudze katalogowej ze stajni Microsoft będącej częścią systemu Windows Server, tak powszechnego w wielu firmach. W Active Directory mamy dwa podstawowe komponenty - logiczne jak i fizyczne. Komponent fizyczny i logiczny Jak sama nazwa wskazuje, komponentem fizycznym jest coś co istnieje w "naszej podstawowej rzeczywistości" - coś namacalnego, […]
Czytaj dalej

Myśląc o Pythonie: Pierwszy program

Jak zacząć Na początek możemy uruchomić Command Line — wpisując w wyszukiwarkę cmd, lub włączyć PowerShell, co również zrobimy wpisując w wyszukiwarkę nazwę - tutaj powershell. Ja użyję powershell, wpisuję więc powershell i naciskam enter. Po uruchomieniu i wpisaniu Python powinien się nam uruchomić interaktywny interpreter Pyhona (jeśli wyświetli się okno sklepu Microsoft, możemy po […]
Czytaj dalej

Myśląc o Pythonie: start.py

Jak możemy się wszyscy domyślić, domena strony na jakiej jesteśmy będzie nawiązywała do Pythona, a raczej charakterystycznego rozszerzenia plików tego języka programowania - .py . Zatem, mimo, że zaczęliśmy od Windows Servera, nadróbmy zaległości. Oto on, cały na biało (a raczej żółto) - Python! Czym jest Python? Python to język programowania ogólnego przeznaczenia. Wynika z […]
Czytaj dalej

Myśląc o Pythonie: Instalacja Pythona

Python to język niezwykle popularny, przystępny, w którym łatwo zacząć programować. Na początku możemy wybrać między dwoma drogami: albo wejść na jedną ze stron z tak zwanymi interpreterami online, czyli przykładowo repl.it i zacząć, albo po prostu zainstalować Pythona na komputerze (co kiedyś pewnie i tak zrobimy). Programowanie online Najmniej wymagające i najszybsze przejście do […]
Czytaj dalej

Windows Server #0

Active Directory Mówiąc o AD, mamy zwykle na myśli usługi katalogowe systemu Windows. W zdecydowanej większości są one nieodłącznym elementem systemów Windows Server w organizacjach. Usługi te są fundamentem domeny Windows oraz stanowią sedno rozwiązań związanych z tożsamością i dostępem w systemie. Nie samym Active Directory żyje admin Usługi katalogowe, czyli Active Directory Domain Services […]
Czytaj dalej
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram