Python
Python
Børre Stenseth

Python

Alle programmeringsspråk har sine sterke og svake sider. Hvilket språk vi velger bør være avhengig av hvilke oppgaver vi skal løse. Python [1] er et "ubyråkratisk" språk som er godt egnet til tekstbehandling, lasting av nettressurser, enkle beregninger og til CGI-programmering. Python er et ganske komplett objektorientert språk og kan brukes, alene eller sammen med biblioteker skrevet i andre språk, til det meste. Bruken i dette materialet utnytter ikke alle disse mulighetene. Python er valgt først og fremst for å ha et enkelt verktøy for CGI-programmering.

På den annen side er det ikke noe vi gjør i dette materialet som vi ikke kan gjøre i andre språk som C, C++, Java, C#.

Python er valgt fordi det gjøre en del "typiske" ting enkelt og fordi språket er stabilt og kan kjøres på alle aktuelle plattformer. Vi kan f.eks. grovteste CGI-programmene våre på en Windows-klient og så flytte dem over på en Linux-server.

Dette er ikke noen lærebok i Python. Det er tilgjengelig en rekke bøker (se referenser nedenfor) og nettressurser for å lære Python. Det som går gjennom her er de aller viktigste oppgavene for å få en enkel tjeneste på tjeneren.

Python versjon 3.0 ble lansert i desember 2008. Python 3.0 er ikke bakoverkompatibel(!). Dette har ført til en rekke komlikasjoner og en del forvirring. Det finnes en rekke ganske omfattende Python-pakker som må oversettes. De to viktigste forskjellene som må tas fatt i med en gang en legger om er:

  • print er en kommando i Python2 og en funksjon i Python 3. Dette er en ganske triviell omlegging.
  • Python 3 bruker utf-8 som basis/default tegnesett. Dette er en stor forbedring, men det krever litt arbeid i omskriving. Tegnsett er et h... i Python2

Litt av problemstillingen drøftes på Pythonsiden: Should I use Python 2 or Python 3 for my development activity [2]

Dette materialet refererer til Python 3. Du vil finne serverløsninger som er basert på Python2. Grunnen til dette er at det fortsatt, april 2014, er problemer med å bruke Python3 mot databaser på den serveren jeg bruker (ubuntu).

[3] [4] [5] [6] [7] [8] [9] [10]
Referanser
  1. Python Home page Python www.python.org/ 14-03-2010
  1. Python2 eller Python3 Python wiki.python.org/moin/Python2orPython3 14-04-2014
  1. Python Swaroop CH www.swaroopch.com/notes/Python 14-08-2011
  1. Beginning Python, From novice to Professional Lie Hetland,Magnus 1980 Apress 1-59059-519-X
  1. Python, The Complete Reference Brown, Martin C Mc Graw Hill 0-07-212718-X
  1. XML Processing with Python McGrath, Sean Prentice Hall 0-13-021119-2
  1. Learning to Program Using Python Gauld,Alan Addison Wesley 0-201-70938-4
  1. Dive Into Python Pilgrim,Mark Apress 1590593561
  1. Foundations of Python Network Programming Goerzen,John Apress 1590593715
  1. Unofficial Windows Binaries for Python Extension Packages www.lfd.uci.edu/~gohlke/pythonlibs/ 01-03-2014