Najbolji vodiči za Python

Python je programski jezik opće namjene koji se dinamički tipka, tumači i poznat je po svojoj lakoći čitljivosti s izvrsnim principima dizajna.

freeCodeCamp ima jedan od najpopularnijih tečajeva na Pythonu. Potpuno je besplatan (a nema niti reklame). Možete ga pogledati na YouTubeu ovdje.

Želite saznati više?

Web je veliko mjesto, ima još puno toga za istražiti:

  • Python praktična knjiga: //anandology.com/python-practice-book/index.html
  • Razmislite o Pythonu: //greenteapress.com/thinkpython/html/index.html
  • Praktični poslovni Python: //pbpython.com/
  • Još jedan tečaj: //realpython.com/?utm source = fsp & utm medium = promo & utm_campaign = bestresources
  • Općenito: //www.fullstackpython.com/
  • Naučite osnove: //www.codecademy.com/learn/learn-python
  • Računarstvo pomoću Pythona: //www.edx.org/course/introduction-computer-science-mitx-6-00-1x-11?ref=hackernoon#!
  • Popis dodatnih resursa za učenje pythona: //github.com/vinta/awesome-python
  • Interaktivni Python: //interactivepython.org/runestone/static/thinkcspy/index.html
  • Vodič za programere za Python: //devguide.python.org/

Čemu služi Python?

Python se lako može koristiti za male, velike, mrežne i izvanmrežne projekte. Najbolje mogućnosti za korištenje Pythona su web razvoj, jednostavno skriptiranje i analiza podataka. Ispod je nekoliko primjera onoga što će vam Python dopustiti:

Izrada web stranica:

Python možete koristiti za stvaranje web aplikacija na mnogim razinama složenosti. Postoji mnogo izvrsnih Python mrežnih okvira, uključujući Pyramid, Django i Flask, da nabrojimo samo neke.

Analiza podataka:

Python je vodeći jezik izbora za mnoge znanstvenike podataka. Popularnost Pythona na ovom polju porasla je zbog dostupnosti mnogih izvrsnih knjižnica usredotočenih na znanost o podacima (od kojih su NumPy i Pandas dvije najpoznatije) i vizualizaciju podataka (poput Matplotliba i Seaborna). Pyton je zaista stvorio zabavu sa podacima sa svim svojim brojnim dostupnim knjižnicama. Ipython s JupyterLabom još je jedan oblik Pythona koji poboljšava upotrebu Pythona u području znanosti o podacima.

Automatizacija:

Python je vrlo fleksibilan jezik koji se može koristiti za automatizaciju dosadnih ili ponavljajućih zadataka. Administratori sustava često ga koriste pišući skripte koje se lako mogu izvršiti s terminala. Python se također može koristiti za stvaranje botova koji automatiziraju neke naše svakodnevne zadatke.

Umjetna inteligencija:

Python se također intenzivno koristi u rastućem polju umjetne inteligencije (AI). Google je Python odabrao kao jedan od prvih dobro podržanih programskih jezika za obuku i interakciju s modelima koji koriste Tensorflow.

Razvoj mobilne aplikacije

Mobilne aplikacije i igre mogu se stvarati s pythonom koristeći Kivy, Pygame i PyQt.

Sigurnost i umrežavanje:

Python se koristi za izgradnju mrežnih alata i sigurnosnih alata koji se široko koriste. Pythonova daljinska automatizacija najsigurnija je, brza i najučinkovitija za testiranje okvira u oblaku. Zbog toga profesionalni programeri koriste python za izradu najsigurnijih okvira i za programiranje soketa.

Strojno učenje, duboko učenje

Python je jedan od najboljih jezika pogodnih za strojno učenje, duboko učenje i analitiku podataka s uporištem u svima njima.

Postoje specijalizirani jezici koji su najprikladniji za razne uloge, poput R i MATLAB, ali kada je riječ o preklapanju polja aplikacija, python osvaja ruke zbog svoje fleksibilnosti i brzog prototipiranja i dostupnosti knjižnica.

Razvoj telegramskih botova

Možete koristiti Python i neke Python-knjižnice za razvoj vlastitih telegramskih botova.

Prikupljanje podataka puzanjem i struganjem

Python se također može koristiti za raščlanjivanje izvornih kodova stranica i dohvaćanje njegovih podataka. Korištenje nekih python modula, kao što je Scrapy i također (za neke stranice koje koriste javascript) Selenium bi trebao učiniti trik!

Python se obično koristi za

  • Razvoj weba i interneta
  • Napredak obrazovanja
  • Znanstveni studiji / Računarstvo
  • Razvoj radne površine
  • Numeričko računanje
  • Razvoj softvera
  • Razvoj poslovnih aplikacija
  • Strojno učenje
  • IOT
  • Razvoj igara
  • Brza izrada prototipova
  • Automatizacija preglednika
  • Analiza podataka
  • Brisanje podataka s web stranica
  • Obrada slike

Neki članci koji pokrivaju upotrebljivost pythona

  • 10 glavnih primjena Pythona
  • Aplikacije za Python
  • Gdje se koristi jezik Python?
  • Za što se koristi Python?

Službeni indeks paketa za python je ovdje.

Trebate li koristiti Python 2 ili Python 3?

Dvije su verzije slične. Ako znate jedno, prelazak na pisanje koda u drugom je jednostavan.

  • Python 2.x neće se održavati nakon 2020.
  • 3.x je u aktivnom razvoju. To znači da su, na primjer, sva nedavna poboljšanja standardne biblioteke prema zadanim postavkama dostupna samo u Pythonu 3.x.
  • Python ekosustav nakupio je značajnu količinu kvalitetnog softvera tijekom godina. Loša strana kršenja povratne kompatibilnosti u 3.xu je ta što neki od tog softvera (posebno interni softver u tvrtkama) još uvijek ne radi na 3.xu.

Montaža

Most *nix based operating systems come with Python installed (usually Python 2, Python 3 in most recent ones). Replacing your system's default installation of Python is not recommended and may cause problems. However, different versions of Python can be safely installed alongside your system's default version. See Python Setup and Usage.

Windows doesn’t come with Python, but the installer and instructions can be found here.

Python Interpreter

The Python interpreter is what is used to run Python scripts.

If it is available and in Unix shell’s search path, it's possible to start it by typing the command python followed by the script name. This will invoke the interpreter and run the script.

hello_campers.py

print('Hello campers!')

From the terminal:

$ python hello_campers.py Hello campers!

When multiple versions of Python are installed, calling them by version is possible depending on the install configuration. In the Cloud9 IDE custom environment, they can be invoked like:

$ python --version Python 2.7.6 $ python3 --version Python 3.4.3 $ python3.5 --version Python 3.5.1 $ python3.6 --version Python 3.6.2 $ python3.7 --version Python 3.7.1

Python Interpreter Interactive Mode

Interactive mode can be started by invoking the Python interpreter with the -i flag or without any arguments.

Interactive mode has a prompt where Python commands can be entered and run:

$ python3.5 Python 3.5.1 (default, Dec 18 2015, 00:00:00) GCC 4.8.4 on linux Type "help", "copyright", "credits" or "license" for more information. >>> print("Hello campers!") Hello campers! >>> 1 + 2 3 >>> exit() $

The Zen of Python

Some of the principles that influenced the design of Python are included as an Easter egg and can be read by using the command inside Python interpreter interactive mode:

>>> import this The Zen of Python, by Tim Peters Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability counts. Special cases aren't special enough to break the rules. Although practicality beats purity. Errors should never pass silently. Unless explicitly silenced. In the face of ambiguity, refuse the temptation to guess. There should be one-- and preferably only one --obvious way to do it. Although that way may not be obvious at first unless you're Dutch. Now is better than never. Although never is often better than *right* now. If the implementation is hard to explain, it's a bad idea. If the implementation is easy to explain, it may be a good idea. Namespaces are one honking great idea -- let's do more of those!

Pros and Cons of Python

Pros

  1. Interactive language with a module support for almost all functionality.
  2. Open Source: So, you can contribute to the community, the functions you have developed for future use and to help others
  3. A lot of good interpreters and notebooks available for better experience like jupyter notebook.

Cons

  1. Being open source, many different ways have developed over the years for the same functions. This sometimes creates chaos for others to read someone's else code.
  2. It is a slow language. So it's a very bad language to use for developing general algorithms.

Documentation

Python is well documented. These docs include tutorials, guides, references and meta information for language.

Another important reference is the Python Enhancement Proposals (PEPs). Included in the PEPs is a style guide for writing Python code, PEP 8.

Debugging

Inline print statements can be used for simple debugging:

… often the quickest way to debug a program is to add a few print statements to the source: the fast edit-test-debug cycle makes this simple approach very effective.

Executive Summary

Python also includes more powerful tools for debugging, such as:

  • logging module, logging
  • debugging module, pdb

Just note that these exist for now.

Hello World!

Going back to the docs, we can read about the print function, a built-in function of the Python Standard Library.

print(*objects,, end="\n", file=sys.stdout, flush=False)

The built-in functions are listed in alphabetical order. The name is followed by a parenthesized list of formal parameters with optional default values. Under that is a short description of the function and its parameters are given and there is occasionally an example.

The print function in Python 3 replaces the print statement in Python 2.

>>> print("Hello world!") Hello world!

A function is called when the name of the function is followed by (). For the Hello world! example, the print function is called with a string as an argument for the first parameter. For the rest of the parameters the defaults are used.

The argument that we called the print function with is a str object or string, one of Python’s built-in types. Also the most important thing about python is that you don’t have to specify the data type while declaring a variable; python’s compiler will do that itself based on the type of value assigned.

The objects parameter is prefixed with a * which indicates that the function will take an arbitrary number of arguments for that parameter.