proglog

Een inleiding tot programmatielogica met Python

View on GitHub

Unicode

Een computer onthoudt alle data als getallen.

Er is een internationale standaard die definieert welk getal welk teken voorstelt. De naam van deze standaard is Unicode.
Unicode definieert niet enkel getallen voor tekens uit de westerse wereld, maar ook voor andere tekens (Arabisch, Chinees, Japans, …)
Unicode is een uitbreiding van een oudere standaard: ASCII.
ASCII was beperkt: er waren enkel getallen gedefinieerd voor tekens uit de westerse wereld.
Er zijn meer dan 140.000 karakters in Unicode. Het is dus onmogelijk en onnodig om te onthouden welke getallen bij welke tekens horen.
Het volgende is wel handig om te weten:

CHR

Python bevat de instructie chr(). Je geeft als parameter een getal mee. Je krijgt als return waarde de letter terug die volgens Unicode bij dit getal hoort.
Voorbeeld: Je toont de hoofdletters in het alfabet. Je moet dus de letters tonen die horen bij de getallen 65 tot en met 90.
Je maakt een nieuw bestand alfabet.py:

for i in range(65, 91):
    print(chr(i))

ORD

Python bevat de instructie ord(). Je geeft als parameter een teken mee. Je krijgt als returnwaarde het getal terug dat volgens Unicode bij dit teken hoort.
Je maakt een voorbeeld. De gebruiker tikt een woord in kleine letters. Jij toont dit woord in hoofdletters.
Voorbeeld: de gebruiker tikt aap. Jij zet elke letter om naar zijn getal: 97, 97, 80.
Je trekt van elk getal 32 af. Je bekomt de getallen 65, 65, 80. Je zet deze getallen om naar hun bijhorende tekens, en bewaart ze in een string.
Je toont daarna die string op het scherm: AAP. Je maakt een nieuw bestand hoofdletters.py:

woord = input("Woord in kleine letters: ")
hoofdletterWoord = ""

for i in range(len(woord)):
    kleineLetter = woord[i]
    getalVanKleineLetter = ord(kleineLetter)
    getalVanHoofdletter = getalVanKleineLetter - 32
    hoofdletter = chr(getalVanHoofdletter)
    hoofdletterWoord += hoofdletter

print(hoofdletterWoord)

image Naar kleine letters.
image Letter statistiek.

⏪ String ⏫ Index Dictionary ⏩