2.8. Scripts

Hvis og når du kommer ud for at skulle udvikle større projekter i Python, bliver du nødt til at gemme din Python-kode som individuelle filer du kan bruge igen og igen. Hertil findes der adskillige tekst editorer til Linux at vælge imellem. (Indsæt her et link til beskrivelse af tekst editorer i FTAV). Brugen af editoren er slet ikke så svært, som det kan virke i første omgang, hvad du let kan konstatere, hvis du har skrevet et eksempel i immediate mode, så marker hele teksten og kopier det hele til den editor, du vil bruge. Når du har koden inde i editoren, så lad editoren foretage en find og erstat og fjern alle


>>>
meldingerne. Hvis du har bevaret koden med de tilhørende blokkoloner m.v., så er det, du nu har tilbage et script (Pythons benævnelse af et program). Scriptet kan du gemme under et lovligt navn og med typebetegnelsen py som eksempelvis mitScript.py. Herefter kan du afvikle (køre) programmet lige så tit du lyster. Desuden er det meget let at udvide og ændre. Det sker ved at hente det ind i editoren igen og skrive videre på det. Det er naturligvis ikke meningen, at du hver gang skal begynde dine projekter i interaktiv mode for derfra at flytte dem ud i editoren og fortsætte der. De større projekter er som antydet bøvlede at behandle i interaktiv mode. Der skriver du det hele i editoren og gemmer det på nævnte måde. Når du har skrevet et program (et script) og ønsker at afvikle det, sker det ved fra det bibliotek, hvori skriptet findes at taste python programmetsNavn.py

I Linux kan Python scripts gøres direkte eksekverbare ved at indsætte


#! /usr/bin/env python
som første linje i programmet. "#!" (havelåge og udråbstegn) SKAL være de to første karakterer i scriptet. Scriptet kan tildeles en eksekverbar mode eller tilladelse ved anvendelse af kommandoen:

$ chmod +x myscript.py


Det er muligt at anvende andre styrekoder end ASCII i Python kildetekster. Den bedste fremgangsmåde til udførelse af dette er at indsætte endnu en speciel kommando linje umiddelbart efter den allerede viste, således:


#! /usr/bin/env python
# -*- coding: iso-8859-1 -*-


Hvis du ønsker at afvikle en opstartsfil mere fra det aktuelle bibliotek, kan du skrive en global opstartsfil ved at bruge koden:


if os.path.isfile('.pythonrc.py'): execfile('.pythonrc.py')


Hvis du ønsker at anvende opstartsfilen i et program, må programmet yderligere indeholde følgende kode (aktuelt tilpasset til dit program):


import os
filnavn = os.environ.get('PYTHONSTARTUP')
if filnavn and os.path.isfile(filnavn):
    execfile(filnavn)