Lister som ikke lar seg endre

Lister i Python som ikke lar seg endre kalles for tupler, f.eks. (1, 2, 3).

For å opprette en tuppel:


tuppel = ("A", "B", "C", "D", "E")


Avlesing av et eller flere enkeltelementer:

tuppel[0]     # gir: "A"
tuppel[-1]    # gir: "E"
tuppel[0:1]   # gir: ("A",)
tuppel[0:2]   # gir: ("A", "B")
tuppel[0:3]   # gir: ("A", "B", "C")
tuppel[1:1]   # gir: "()"
tuppel[1:2]   # gir: ("B",)
tuppel[1:3]   # gir: ("B", "C")
tuppel[1:4]   # gir: ("B", "C", "D")
tuppel[1:100] # gir: ("B", "C", "D", "E")
tuppel[:100]  # gir: ("A", "B", "C", "D", "E")
tuppel[3:]    # gir: ("D", "E")
tuppel[100:]  # gir: "()"

Lister som lar seg endre

En liste i Python er en tabell (f.eks. [1, 2, 3]) som lar seg endre etter opprettelse.

For å opprette samt legge til i ettertid:

liste = []              # oppretter tom liste
liste = ["A", "B", "C"] # oppretter liste med A, B, C

liste.append("E")       # legger til E på slutten
liste.append("F")       # legger til F på slutten
liste.insert(0, "G")    # legger til G først 

# innholdet er nå: ["G", "A", "B", "C", "E", "F"]

For å avlese et eller flere enkeltelementer:

liste[0]     # gir: "A"
liste[-1]    # gir: "G"
liste[0:1]   # gir: ["A"]
liste[0:2]   # gir: ["A", "B"]
liste[0:3]   # gir: ["A", "B", "C"]
liste[1:1]   # gir: "[]"
liste[1:2]   # gir: ["B"]
liste[1:3]   # gir: ["B", "C"]
liste[1:4]   # gir: ["B", "C", "E"]
liste[1:100] # gir: ["B", "C", "E", "F", "G"]
liste[:100]  # gir: ["A", "B", "C", "E", "F", "G"]
liste[3:]    # gir: ["E", "F", "G"]
liste[100:]  # gir: "[]"

Antall i listen:

len(liste) # gir: "6" (som er antallet/lengden)

Sortering:

sorted(liste) # for sortert visning uten endringer
# gir: ["A", "B", "C", "E", "F", "G"]
liste.reverse()
# gir: ["F", "E", "C", "B", "A", "G"]
liste.sort()
# gir: ["A", "B", "C", "E", "F", "G"]
liste.sort(reverse=True)
# gir: ["G", "F", "E", "C", "B", "A"]

Reversering:

liste.reverse()
# gir: ["F", "E", "C", "B", "A", "G"]

Fjerning:

liste.remove("G")       # fjerner G
del liste[-1]           # fjerner E
fjernet = liste.pop()   # flytter D fra liste til variabel
fjernet = liste.pop(-1) # flytter C fra liste til variabel

TBC

Matte i Python

De enkle matematiske operasjonene:


fire = 2 + 2      # gir: '4'
ingenting = 2 - 2 # gir: '0'
fire = 2 * 2      # gir: '4'
en = 2 / 2        # gir: '1.0'
fire = 2 ** 2     # gir: '4' (fordi dette er 2 opphøyd i 2) 


Det er dog et problem med matte og programmering som man før eller senere garantert vil dulte borti:


tull = 0.1 + 0.2 # gir: '0.30000000000000004'

Årsaken er at datamaskinen ikke kan oppbevare litt spesielle tall.


For tall som skal bli del av tekst:


"Uken har " + 7 + " dager"      # gir: TypeError
"Uken har " + str(7) + " dager" # gir: 'Uken har 7 dager'


TBC

Behandling av tekst i Python

Tre måter å opprette tekstvariabler på:


navn = str("Ove Bakken")
navn = "Ove Bakken"
navn = ("Ove" " " "Bakken")


For å skrive ut i terminalvinduet:


print("tekst")  # gir: 'tekst'
print(variabel) # gir innholdet i variabel


For å gjøre tekst liten, stor, eller til et navn:

navn = "Ove baKkEn"
navn.title() # gir: 'Ove Bakken'
navn.lower() # gir: 'ove bakken'
navn.upper() # gir: 'OVE BAKKEN'

Behandling av tomrom:

navn = "Ove Bakken"
tekst = navn + " lærer Python." # sammenliming av tekst
tekst = " " + tekst + " " # ekstra tomrom på begge sider
                          # som gir: ' Ove Bakken lærer Python. '
tekst.lstrip() # gir: 'Ove Bakken lærer Python. '
tekst.rstrip() # gir: ' Ove Bakken lærer Python.'
tekst.strip()  # gir: 'Ove Bakken lærer Python.'

For å lage en tabell:

print("Testtabell:\n") # \n gir linjeskift
print("\t\tKol. 1\t\t|\t\tKol. 2\t\t|\t\tKol. 3")
print(" -------------------------------------------------------")
print("\t\tData 1\t\t|\t\tData 2\t\t|\t\tData 3")
print("\t\tData 4\t\t|\t\tData 5\t\t|\t\tData 6")
print("\t\tData 7\t\t|\t\tData 8\t\t|\t\tData 9")
# \t gir tab

.. gir resultatet


Mye mer finnes i dokumentasjonen for den som er interessert.

TBC

Installasjon, oppsett, samt kjøring av Python

Først lastet jeg ned Python 3 fra python.org/downloads og installerte.

Og siden jeg er hakket latere enn det som er sunt – og i tillegg ganske praktisk av meg, valgte jeg å bruke Sublime som IDE siden denne allerede var installert:

Her kan jeg da skrive kode, lagre innholdet i filnavn.py, og trykke på CTRL+B som gjør at Sublime kjører kommandoen python filnavn.py for meg og viser resultatet i et eget vindu.

Easy.

Da var tiden kommet for å lære seg Python

Fra tid til annen har jeg vurdert om jeg ikke skulle lære meg Python, men så har jeg funnet andre ting å drive med fordi nytten virket uklar.

Men igjen og igjen dukker dette språket opp. Blant annet når jeg trenger å løse problemer i Linux, men oftest når jeg leser jobbannonser på FINN. Så hvorfor ikke gi det en sjanse og få et innblikk?

print("Wish me luck!")

Jeg fant en kræsjkursbok i Python på Amazon med meget gode anbefalinger som jeg håper gjør jobben.