Learning Python – the basics

With this series of articles we are going to explore how this programming language works and introduce the most important concepts for learning Python. This series of articles will go in the same direction of the PHP ones (https://keepforyourself.com/category/coding/php/learning-php/) so we will have the basics, the variables, if/else statements, arrays, loops and functions.

In this article

What is Python and why to learn

(From Wikipedia) Python is a high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation. Python is dynamically-typed and garbage-collected. It supports multiple programming paradigms, including structured, object-oriented and functional programming.

Some of the reasons for learning Python are:

  • is widely used in the industry,
  • it is easy to absorb and has a relatively simple syntax
  • can be used for small or complex task,
  • server-side programs or web-application,
  • microservices
  • GUI applications
  • fully portable (supported by Windows, Linux, Mac, Android)
  • artificial intelligence and machine learning
  • very good for prototyping

Install Python

For installing python you can follow this guide that will allow you to switch between different versions easily https://keepforyourself.com/coding/switch-python-version-using-pyenv/

or

Install Python on Ubuntu

sudo apt-get install python

Install Python on a Mac

Install homebrew first

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
# insert the homebrew directory at the top of your PATH
$ export PATH="/usr/local/opt/python/libexec/bin:$PATH"
$ brew install python

Install Python on Windows

we don’t support windows on this blog 🙂

https://www.python.org/downloads/windows/

Basic Python program

A basic python program (or script, debatable this point) can consist in a file named my-first-python-program.py with this content

print("Hello")

That can be executed from the command line by using this command:

python my-first-python-program.py

What is happening when we type “python my-frist-python-program.py” is that the script my-first-python-program.py is processed by another program called the Python interpreter. This interpreter (written in C) opens and reads the script, compiles or translate it into bytecodes and then executes them in a sort of simulated computer called “virtual machine”.

General structure of a Python program

All the python programs and scripts will always follow this general structure

Import statements (usually at the top of the files) are used for importing libraries and packages that can be internal or external to the project

# import statements
# import packages and libraries external or internal
import os
# or
from datetime import datetime 
# or
from some_other_package import (
    library_or_package1,
    library_or_package2,
    ...
    library_or_packageN
)
# or
from another_library import package1, package2, package3

Functions or classes definitions

# functions definition
def some_interesting_function(interesting_argument):
    interesting = interesting_argument
    do_something(interesting)

def some_other_interesting_function(some_stuff):
    stuff = some_stuff
    more_interesting(stuff)

# or classes
class MyPythonClass:
    def my_class_func(self):
        print("I'm my_class_func")

Program execution

if __name__ == "__main__":
    # call functions and do stuff
    ....

It is important to note that the above code is very important to understand. We could have started our program just by calling the functions and do all the stuff, however by using the comparison block of __name__ with __main__ we are ensuring that the program is being executed ONLY if our program is being called and not imported. We will came back to this concept in the next lessons.

First python program

As first complete example we will write a program that is writing the system time every 5 seconds using what we learned so far (import, function, main) and after 3 write will exit. Don’t get scared we will go through all the basic concepts in the next lessons

import time
from datetime import datetime

def print_time():
    print("\n"*5)
    print("{}".format(datetime.now()))

counter = 0
while 1:
    counter += 1
    print_time()
    if counter == 3:
        exit()
    time.sleep(5)

With that that’s the end of the first lesson, I hope you liked it and if so please share and let us grow

d3

d3 is an experienced Software Engineer/Developer/Architect/Thinker with a demonstrated history of working in the information technology and services industry. Really passionate about technology, programming languages and problem solving. He doesn't like too much the self celebration and prefers to use that time doing something useful ...i.e. coding

You may also like...