None og Binære Data
Reelle programmer håndterer manglende verdier og binærdata. Bruk None for å markere “ingen verdi”, og bytes/bytearray for rå binært innhold. Vær klar over når hver type er passende, og hvordan du trygt konverterer mellom tekst og bytes.
None for “Ingen verdi”
None er et enkelt objekt som betyr “ingenting her”.
1234567result = None email = None print(result is None) # True print(email is None) # True if result is None: print("No result yet")
Bruk is None i stedet for sannhetsverdi-sjekker, siden 0 og "" også regnes som falske.
123value = 0 print(not value) # True print(value is None) # False
Standardverdier og reserveverdier
1234567x = None print(x or "unknown") # 'unknown' print("unknown" if x is None else x) x = 0 print(x or "unknown") # 'unknown' (maybe wrong) print("unknown" if x is None else x) # 0
Funksjoner og parametere
1234567def add_tag(text, tag=None): if tag is None: tag = "general" return f"[{tag}] {text}" print(add_tag("hello")) # [general] hello print(add_tag("hello", "news")) # [news] hello
bytes og bytearray for binære data
str inneholder tekst, bytes og bytearray inneholder rå byte-verdier.
1234b1 = b"hello" b2 = bytes([72, 105]) buf = bytearray(b"abc") buf[0] = 65
Koding og dekoding
UTF-8 er en tekstkoding som konverterer tegn til bytes slik at de kan lagres og overføres, og den støtter alle Unicode-tegn samtidig som den er kompatibel med ASCII.
123text = "café" data = text.encode("utf-8") back = data.decode("utf-8")
Blanding av tekst og bytes
123456try: b"ID:" + "123" except TypeError as e: print(e) ok = b"ID:" + "123".encode("utf-8")
Lengdeforskjeller
123ch = "é" len(ch) # 1 len(ch.encode()) # 2
Filer
# with open("example.png", "rb") as f:
# blob = f.read()
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Fantastisk!
Completion rate forbedret til 3.45
None og Binære Data
Sveip for å vise menyen
Reelle programmer håndterer manglende verdier og binærdata. Bruk None for å markere “ingen verdi”, og bytes/bytearray for rå binært innhold. Vær klar over når hver type er passende, og hvordan du trygt konverterer mellom tekst og bytes.
None for “Ingen verdi”
None er et enkelt objekt som betyr “ingenting her”.
1234567result = None email = None print(result is None) # True print(email is None) # True if result is None: print("No result yet")
Bruk is None i stedet for sannhetsverdi-sjekker, siden 0 og "" også regnes som falske.
123value = 0 print(not value) # True print(value is None) # False
Standardverdier og reserveverdier
1234567x = None print(x or "unknown") # 'unknown' print("unknown" if x is None else x) x = 0 print(x or "unknown") # 'unknown' (maybe wrong) print("unknown" if x is None else x) # 0
Funksjoner og parametere
1234567def add_tag(text, tag=None): if tag is None: tag = "general" return f"[{tag}] {text}" print(add_tag("hello")) # [general] hello print(add_tag("hello", "news")) # [news] hello
bytes og bytearray for binære data
str inneholder tekst, bytes og bytearray inneholder rå byte-verdier.
1234b1 = b"hello" b2 = bytes([72, 105]) buf = bytearray(b"abc") buf[0] = 65
Koding og dekoding
UTF-8 er en tekstkoding som konverterer tegn til bytes slik at de kan lagres og overføres, og den støtter alle Unicode-tegn samtidig som den er kompatibel med ASCII.
123text = "café" data = text.encode("utf-8") back = data.decode("utf-8")
Blanding av tekst og bytes
123456try: b"ID:" + "123" except TypeError as e: print(e) ok = b"ID:" + "123".encode("utf-8")
Lengdeforskjeller
123ch = "é" len(ch) # 1 len(ch.encode()) # 2
Filer
# with open("example.png", "rb") as f:
# blob = f.read()
Takk for tilbakemeldingene dine!