GNU/Linux >> Znalost Linux >  >> Linux

Co je Python:Úvod do multiplatformního programovacího jazyka

Ilustrace Python od Walkera Cahalla

Cílové publikum

Tento článek předpokládá, že čtenář má alespoň základní znalosti programovacích jazyků.

Úvod

Jakýkoli kurz Úvod do informatiky by byl neúplný bez zmínky o Pythonu. Na scéně programovacích jazyků se může zdát relativně nový, ale používá se od počátku 90. let. Mezi organizace, které využívají Python, patří desítky velkých korporací, včetně Google, Facebooku a dokonce i NASA a Jet Propulsion Laboratory v Pasadeně.
.

Příběh Pythonu o původu

Python vyvinul Guido van Rossum na konci 80. let a zahrnoval to, co viděl jako vylepšení programovacího jazyka ABC. Protože je velkým fanouškem Monty Python, britského komediálního souboru, pojmenoval jazyk „Python“, dokonce zašel tak daleko, že nazval integrované vývojové prostředí neboli IDE, IDLE na počest Erica Idlea, jednoho z členů skupiny. .

Van Rossum je stále jedním z hlavních autorů a přispěvatelů jazyka a od komunity Python obdržel titul BDFL (Benevolent Dictator For Life).

Znaky Pythonu

Python je multiplatformní jazyk:program Python napsaný na počítači Macintosh poběží na systému Linux a naopak. Programy Python mohou běžet na počítači se systémem Windows, pokud má počítač se systémem Windows nainstalovaný interpret jazyka Python (většina ostatních operačních systémů je dodávána s předinstalovaným jazykem Python). Aplikace s názvem py2exe existuje, která umožňuje uživateli vytvořit binární soubor Windows z programu Python, takže program Python vyvinutý na jiném systému lze spustit na počítači s Windows, který nemá nainstalovaný Python.

Python se od mnoha jiných jazyků liší používáním mezer a odsazení. Zatímco mnoho jiných jazyků končí programovací příkazy pomocí zakončení řádků, jako jsou středníky, Python takové zakončení nemá. Nezahrnuje ani bloky kódu, jako je for smyčky a if prohlášení ve složených závorkách. Python spíše používá odsazení k definování bloku kódu. Každé následné odsazení definuje postupný blok. Prozkoumejte například následující kód:

if i == 1:
    print "i = 1"
    for x in range(10):
        print "x = ", x
else:
    print "i does not equal 1"

Python interpretuje čtvrtý řádek (print "x= ", x ), aby byl součástí for smyčka – spíše než část if prohlášení – kvůli jeho úrovni odsazení. Odsazení také vymezuje definice funkcí a tříd.

Programovací nebo skriptovací jazyk?

Mezi fanoušky i odpůrci se často objevuje otázka:je Python skriptovací jazyk nebo programovací jazyk? Než se na to pokusíme odpovědět, zopakujme si, co máme na mysli tím, že je rozlišujeme.

Programovací jazyky

Programovací jazyky jsou kompilovány speciálním programem zvaným kompilátor. Běžné jazyky jako C a C++ musí překladač přeložit do strojového kódu – pro člověka nesrozumitelného – který počítač dokáže přečíst a zpracovat. Když napíšete program v C a zkompilujete jej, výsledný kód .o soubor je to, co počítač čte. Kompilovaný kód obvykle vede k rychlejšímu kódu a kompilace musí proběhnout pouze jednou (pokud nezměníte svůj kód). Některé kompilátory provádějí některé základní optimalizace automaticky a jiné mají několik příznaků, které lze použít k optimalizaci kódu pro více procesorů a dokonce i pro paralelní zpracování.

Kompilovaný kód, který programovací jazyk vytváří, nejčastěji běží nad hardwarem, na kterém je napsán. Program napsaný a zkompilovaný v C++ je spouštěn přímo procesorem, na kterém byl zkompilován. I když to může způsobit rychlejší běh kódu, má to také někdy nežádoucí účinek, že zkompilovaný program je závislý na procesoru a stroji. Kód zkompilovaný na konkrétním počítači nemusí dokonce běžet na samostatném, téměř identickém počítači, kvůli malým rozdílům v hardwaru.
.

Skriptovací jazyky

Skriptovací jazyky se na druhou stranu čtou a interpretují při každém jejich spuštění, aniž by kompilátor vytvářel soubor ve strojovém jazyce. Neprobíhá žádná optimalizace, takže pokud píšete nedbalý kód, dostanete nedbalé výsledky, což může vést ke zpomalení programů.

Skriptovací jazyky také běží „uvnitř“ jiného programu, nikoli přímo na svém hostitelském procesoru. PHP běží například uvnitř skriptovacího jádra PHP a bash skripty běží uvnitř bash shellu. (Výjimkou z tohoto pravidla je Java; Java je považována za programovací jazyk, ale běží uvnitř Java Virtual Machine (JVM)).
.

Verdikt

Co je tedy Python? I když se Python často nazývá programovací jazyk, technicky je to skriptovací jazyk. Jeho kód nepoužívá žádný kompilátor a může běžet na téměř jakémkoli zařízení, na kterém běží Python shell. Sdílí také několik dalších podobností se skriptovacími jazyky oproti programovacím jazykům.

Skriptovací jazyky jsou často méně rigidní, pokud jde o syntaxi a formát. S bílými místy je zacházeno shovívavěji (s výjimkou odsazení, o kterém již bylo zmíněno). Výsledkem je, že programátoři nemusí trávit hodiny laděním kódu hledáním špatně umístěného středníku nebo chybějící složené závorky. Pro mnoho programátorů Pythonu je chloubou, že jejich kód je snadno čitelný pro člověka, což usnadňuje ladění v případě potřeby.

Programovací jazyky (jako je C++) bývají syntakticky složitější a obtížně se je učí, zatímco skriptovací jazyky jsou méně zastrašující. Zvažte program „Ahoj, světe“ v C++:

#include <iostream>;  
using namespace std;  
int main(){  
      cout << "Hello, world!" << endl;  
      return 0;  
}

.
Nyní stejný program v Pythonu:

print "Hello, world!"

.
Protože nejde o kompilovaný jazyk, někteří programátoři Python znevažují a říkají, že může být pomalý a méně efektivní. S tím, jak se procesory zlepšují v rychlosti a architektuře, se však mezi kompilovaným jazykem a skriptovaným jazykem stává méně patrný rozdíl v rychlosti. Rozdíl mezi nimi se může projevit pouze tam, kde se jedná o vážný problém.
.

Rozkol verze Pythonu

Nováčci v prostředí Pythonu si mohou všimnout a zamyslet se nad rozdíly mezi verzí 2 a verzí 3 jazyka. Na rozdíl od většiny softwarových verzí existují obě verze současně a odděleně a nejsou vzájemně zcela kompatibilní.

Verze 3.0 byla vydána v prosinci 2008 a byla navržena tak, aby opravila určité chyby v jazyce – především odstraněním některých duplicitních způsobů provádění některých úkolů. Není však plně zpětně kompatibilní s verzí 2 a programy napsané ve 2.7 se mohou při portování na verzi 3 zlomit. Na krátkou dobu byl jeho vývoj paralelní s verzí 2, ale tento paralelní vývoj skončil s verzí 3.2 v únoru 2011. Nástroje existují, aby byla přenositelnost a konverze trochu jednodušší.

Když programátor začne pracovat v Pythonu, musí se rozhodnout, kterou verzi použije. V době psaní tohoto článku je nejběžněji používaná verze 2.7. Je to také konečná verze 2.x; všechna budoucí vydání budou pro verzi 3.x. Takže i když je verze 2.7 oficiálně na konci životnosti, je stále oblíbenou volbou pro svou rozsáhlou sbírku knihoven. Dokud se míra přijetí a používání verze 3.x nezvýší (a komunita nevyvine podporu knihoven této verze), může tento rozkol přetrvávat.
.

Závěr

Python je extrémně schopný jazyk, který mnoho vývojářů softwaru považuje za vhodné se naučit. Jeho přenositelnost a snadné použití, stejně jako jeho přístupnost pro nové programátory, z něj činí mimořádně atraktivní řešení mnoha programovacích problémů a aplikací.

Další zajímavé články a návody – jako Jak na to:Python 3 a Vytvoření virtuálního prostředí (venv) v CentOS 6.7 – určitě zamiřte na náš blog.

Atlantic.Net

Altantic.Net nabízí mnoho VPS hostingů, spravovaný cloud hosting, cloudové instalace aplikací jedním kliknutím a mnoho dalších hostingových řešení.
.
.


Linux
  1. Převod kódu Python 2 na Python 3

  2. Jaký je váš oblíbený skriptovací nebo programovací jazyk Linux?

  3. Co je :-!! v C kódu?

  1. Programovací jazyk C - Úvod

  2. Můžeme použít C kód v Pythonu?

  3. S jakým programovacím jazykem je nejlepší začít jako úplný začátečník?

  1. Jak se začít učit programovací jazyk

  2. Zdroje pro programování Portable Shell?

  3. Jak na to:Programování soketů v Pythonu