Python-variabelen en gegevenstypen

  1. Python-variabele
  2. Python-gegevenstype

In deze sectie leert u variabelen en gegevenstypen in Python-programmeren.

Python-variabele

Een variabele is een geheugenlocatie met een naam en een waarde (sommige gegevens).

Variabelen hebben unieke namen zodat geheugenlocaties kunnen worden onderscheiden. Ze hebben dezelfde naamregels die moeten worden gevolgd als die van id’s. Controleer de naamgevingsregels voor ID’s.

In Python is het niet nodig om een ​​variabele (met vermelding van het gegevenstype) te declareren voordat u die variabele gebruikt. Als u een variabele wilt maken, schrijft u gewoon een geldige naam voor de variabele en wijst u deze een waarde toe met de toewijzingsoperator. Het gegevenstype van de variabele wordt intern gedefinieerd op basis van het type waarde dat u eraan toewijst.

Variabele toewijzing

Een toewijzingsoperator = wordt gebruikt om een ​​waarde toe te wijzen aan een variabele. Je kan elk type waarde toewijzen aan een variabele. Het gegevenstype van de variabele wordt intern gedefinieerd.

De volgende code laat zien hoe een toewijzingsoperator kan worden gebruikt om waarden van verschillende gegevenstypen toe te wijzen:

x = 3
y = 4.124
z = "Python"

Hier heb je int , float en string variabelen.

Meerdere opdrachten

Je kan ook waarden toewijzen aan meerdere variabelen in een enkele Python-instructie. Dit worden meerdere opdrachten genoemd. Overweeg de onderstaande code:

x, y, z = 2, 4.124, "Python"

Hier wordt 2 toegewezen aan x , 4.124 wordt toegewezen aan y en string “Python” wordt toegewezen aan z.

Als u dezelfde waarde aan verschillende variabelen wilt toewijzen, kan je het volgende schrijven:

x = y = z = "Blue"

Nu zijn alle drie variabelen gelijk.

Waarschuwing

Het is geen goede gewoonte om een ​​lijst toe te wijzen aan twee variabelen zoals hierboven. Beide / alle wijzen naar dezelfde geheugenlocatie, dus als de waarde wordt gewijzigd door één variabele, worden alle andere ook onmerkbaar gewijzigd. Je zou wat vreemd gedrag kunnen tegenkomen als je je hier niet van bewust bent.

Python-gegevenstype

Wanneer u een waarde toewijst aan een variabele, wordt ook het gegevenstype van de variabele opgegeven. Python is een objectgeoriënteerd programmeren, en alles in Python is een object omdat Python geen typen ‘primitieve’ of ‘unboxed’ heeft.

In Python zijn de gegevenstypen van variabelen eigenlijk een klasse waarvan variabelen de instanties (objecten) zijn.

Hier volgen enkele gegevenstypen in Python:

nummers

Getallen zoals gehele getallen, drijvende komma en complexe getallen zijn Python-getallen. In Python worden gehele getallen weergegeven door int , zwevende punten door float en complexe getallen per complex klasse.

De ingebouwde type() functie kan worden gebruikt om het gegevenstype van een variabele te controleren of tot welke klasse een variabele behoort.

De isinstance() functie wordt gebruikt om te controleren of het object een instantie van de specifieke klasse of een subklasse daarvan is. Het eerste argument is het object zelf en het tweede argument is het gegevenstype waarmee vergeleken moet worden.

x = 3
print("type of", x, "is", type(x))
x = 3.23
print("type of", x, "is", type(x))
x = 3+3j
print("is", x, "a complex number:", isinstance(x, complex))
type of 3 is <class 'int'>
type of 3.23 is <class 'float'>
is (3+3j) a complex number: True

Lijst

Een lijst is een geordende reeks elementen van (verschillende) gegevenstypen. Een lijst kan in Python worden gemaakt met vierkante haakjes [] en tussen vierkante haakjes staan ​​lijstitems die worden gescheiden door komma’s.

x = [2, 4.5, "blue"]

Om toegang te krijgen tot het lid van de lijst, kan je de operator voor toegang tot de index gebruiken, die in Python bekend staat als slicing-operator [] . De indexering van de elementen van de lijst begint bij 0. Beschouw het onderstaande voorbeeld:

x = [2, 4, 6, 8, 10]
print('x[0] =', x[0])           #displays the first element
print('x[0:2] =', x[0:2])       #displays first two elements of list that is at location 0 and 1
print('x[2:] =', x[2:])         #displays elements from location 2 (third element)
x[0] = 2
x[0:2] = [2, 4]
x[2:] = [6, 8, 10]

De items van de Python-lijst kunnen worden gewijzigd (bijgewerkt, verwijderd, toegevoegd). Met andere woorden, de Python-lijst kan worden gewijzigd.

Notitie

Lijsten kunnen worden gewijzigd.

tupel

Tuple is ook een geordende lijst met items die hetzelfde zijn als lijst. Het enige verschil tussen een tuple en een lijst is dat het tuple-element onveranderlijk is.

Je kan een Python-tuple definiëren met behulp van haakjes en elementen worden gescheiden door komma’s:

x = (3, 'pink', 3+8j)
print('x[0] =', x[0])
print('x[0:2] =', x[0:2])
x[0] = 4            #Error because tuples are immutable
x[0] = 3
x[0:2] = (3, 'pink')
TypeError: 'tuple' object does not support item assignment

Notitie

Tuples zijn onveranderlijk.

Draad

Een string is een reeks tekens. Een tekenreeks kan worden gemaakt met enkele of dubbele aanhalingstekens. Een tekenreeks met meerdere regels kan ook worden gemaakt met behulp van drievoudige aanhalingstekens.

x = "String of characters"
x = """Multiline
string"""

Om toegang te krijgen tot de tekens van de snijsnijder wordt de operator gebruikt.

x = 'Python Programming'
print('x[0] =', x[0])
print('x[4:15] =', x[4:15])
x[4] = 'l'          #Error because strings are immutable
x[0] = P
x[4:15] = on Programm
TypeError: 'str' object does not support item assignment

Notitie

Strings zijn ook onveranderlijk.

Stel

Set bevat unieke items en is een ongeordende lijst met elementen. Een set in Python kan worden gemaakt met accolades {} en de items worden gescheiden door komma’s.

x = {3, 5, 7, 2, 4, 5}      
print(x)        #prints the set variable 
print(type(x))      #checking type of x
{2, 3, 4, 5, 7}
<class 'set'>

Notitie

Sets kunnen worden gewijzigd.

Woordenboek

Dictionary is een native Python-gegevenstype waarvan de elementen sleutel / waarde-paren zijn. Een woordenboek bevat ongeordende elementen. Een stukje gegevens of de waarde van het woordenboek kan worden opgehaald als u de sleutel kent.

Een woordenboek kan worden gemaakt met accolades {} waarbij elk element een paar is dat sleutel en waarde bevat.

Sleutels en waarden in het Python-woordenboek kunnen van elk type zijn.

Overweeg het onderstaande voorbeeld:

x = {1:'blue', 'key':'pink'}
print(type(x))
print('x[1] = ', x[1])      #using key to retrive value
print("x['key'] =", x['key']) #using key to retrive value
<class 'dict'>
x[1] =  blue
x['key'] = pink

Notitie

Woordenboek kan worden gewijzigd.

Type conversie

Python-variabelen kunnen worden geconverteerd naar andere typen, je kan bijvoorbeeld het int gegevenstype omzetten in een float gegevenstype. Voor het type conversie kan je conversie-functie, zoals te gebruiken int() , float() , str() , etc.

x = 8
print("Value of x = ", int(x))
print("Value of x = ", float(x))
Value of x =  8
Value of x =  8.0

Als u float waarde naar int waarde wilt converteren, wordt het decimale gedeelte afgekapt.

y = 3.4
print("Converting float to int:", int(y))
Converting float to int: 3

Als u het string gegevenstype naar een ander type wilt converteren , moet u compatibele waarden opgeven, anders krijgt u een ValueError :

print("Converting string to float:", float('33.9'))
print("Converting string to float:", float('text'))
Converting string to float: 33.9
Traceback (most recent call last):
  File "<pyshell#12>", line 1, in <module>
    float('a')
ValueError: could not convert string to float: text

Je kan één sequentie te zetten in een andere, bijvoorbeeld set een tuple of string om list enzovoorts met functies zoals list() , set() , tuple() etc.

print(set([4, 5, 6]))
print(tuple({8, 9, 10}))
print(list('Python'))
{4, 5, 6}
(8, 9, 10)
['P', 'y', 't', 'h', 'o', 'n']