Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

Python-tuples beheersen: aanmaken, benaderen en geavanceerde bewerkingen

Python-tuples

Ontdek de kracht van tuples in Python – onveranderlijke reeksen die snelheid, veiligheid en veelzijdigheid bieden voor heterogene data. Deze gids behandelt alles van basis syntax tot geavanceerde bewerkingen, zodat je begrijpt wanneer je tuples kiest boven lijsten.

Video: Python-lijsten en tuples

Een tuple gedraagt zich als een lijst maar is onveranderlijk zodra aangemaakt. In tegenstelling tot lijsten kun je de elementen niet wijzigen, wat tuples ideaal maakt voor vaste datasets.


Een tuple aanmaken

Tuples worden gedefinieerd door komma-gescheiden waarden tussen haakjes () te plaatsen. Hoewel haakjes optioneel zijn, verbeteren ze de leesbaarheid.

Tuples kunnen elk aantal items bevatten en datatypes mischen – integers, floats, strings, lijsten, andere tuples, etc.

# Verschillende soorten tuples
# Lege tuple
my_tuple = ()
print(my_tuple)
# Tuple met integers
my_tuple = (1, 2, 3)
print(my_tuple)
# Gemengde datatypes
my_tuple = (1, "Hallo", 3.4)
print(my_tuple)
# Geneste tuple
my_tuple = ("muis", [8, 4, 6], (1, 2, 3))
print(my_tuple)

Uitvoer

() (1, 2, 3) (1, 'Hallo', 3.4) ('muis', [8, 4, 6], (1, 2, 3))

Tuples kunnen ook zonder haakjes worden aangemaakt – een techniek die tuple packing heet.

my_tuple = 3, 4.6, "hond"
print(my_tuple)
# Tuple unpacking
a, b, c = my_tuple
print(a)
print(b)
print(c)

Uitvoer

(3, 4.6, 'hond') 3 4.6 hond

Als een tuple één element bevat, is een aftredende komma vereist om het te onderscheiden van een gewone waarde.

my_tuple = ("hallo")
print(type(my_tuple))  # <class 'str'>
# Enkele-element tuple
my_tuple = ("hallo",)
print(type(my_tuple))  # <class 'tuple'>
# Haakjes optioneel
my_tuple = "hallo",
print(type(my_tuple))  # <class 'tuple'>

Uitvoer

<class 'str'> <class 'tuple'> <class 'tuple'>

Tuple-elementen benaderen

Tuples ondersteunen verschillende methoden voor elementtoegang:

1. Indexeren

Gebruik de index-operator [] met zero-based indices. Out-of-range toegang geeft IndexError; niet-integer indices geven TypeError.

# Indexeren voorbeeld
my_tuple = ('p','e','r','m','i','t')
print(my_tuple[0])  # 'p'
print(my_tuple[5])  # 't'
# Geneste indexering
n_tuple = ("muis", [8, 4, 6], (1, 2, 3))
print(n_tuple[0][3])  # 's'
print(n_tuple[1][1])  # 4

Uitvoer

p t s 4

2. Negatief indexeren

Negatieve indices tellen vanaf het einde: -1 is het laatste element.

# Negatieve indexering
my_tuple = ('p', 'e', 'r', 'm', 'i', 't')
print(my_tuple[-1])  # 't'
print(my_tuple[-6])  # 'p'

Uitvoer

t p

3. Slicing

Gebruik start:stop syntaxis om sub-tuples te extraheren.

# Slicing voorbeeld
my_tuple = ('p','r','o','g','r','a','m','i','z')
print(my_tuple[1:4])   # ('r', 'o', 'g')
print(my_tuple[:-7])   # ('p', 'r')
print(my_tuple[7:])    # ('i', 'z')
print(my_tuple[:])     # volledige tuple

Uitvoer

('r', 'o', 'g') ('p', 'r') ('i', 'z') ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')
Python-tuples beheersen: aanmaken, benaderen en geavanceerde bewerkingen

Een tuple wijzigen

Tuples zijn onveranderlijk. Directe toewijzing aan een element geeft TypeError:

# Poging tot wijziging
my_tuple = (4, 2, 3, [6, 5])
# my_tuple[1] = 9  # TypeError

Als een element zelf mutable is (bijv. een lijst), kan de interne staat wel veranderen:

my_tuple[3][0] = 9
print(my_tuple)  # (4, 2, 3, [9, 5])

Tuples kunnen volledig heraangewezen worden naar een nieuwe waarde:

my_tuple = ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')
print(my_tuple)

Gebruik + voor concatenatie en * voor herhaling; beide retourneren een nieuwe tuple.

print((1, 2, 3) + (4, 5, 6))  # (1, 2, 3, 4, 5, 6)
print(("Herhaal",) * 3)       # ('Herhaal', 'Herhaal', 'Herhaal')

Uitvoer

(1, 2, 3, 4, 5, 6) ('Herhaal', 'Herhaal', 'Herhaal')

Een tuple verwijderen

Individuele items kunnen niet worden verwijderd. De hele tuple kan met del worden verwijderd:

my_tuple = ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')
# del my_tuple[3]  # TypeError
del my_tuple
# print(my_tuple)  # NameError

Uitvoer

Traceback (most recent call last): File "<string>", line 12, in <module> NameError: name 'my_tuple' is not defined

Tuple-methoden

Tuples blootleggen slechts twee ingebouwde methoden: count() en index().

my_tuple = ('a', 'p', 'p', 'l', 'e')
print(my_tuple.count('p'))  # 2
print(my_tuple.index('l'))  # 3

Uitvoer

2 3

Aanvullende tuple-bewerkingen

1. Lidmaatschapstest

Controleer op bestaan met het in-trefwoord.

my_tuple = ('a', 'p', 'p', 'l', 'e')
print('a' in my_tuple)
print('b' in my_tuple)
print('g' not in my_tuple)

Uitvoer

True False True

2. Iteratie

Loop over tuples met for:

for naam in ('Jan', 'Kaat'):
    print("Hallo", naam)

Uitvoer

Hallo Jan Hallo Kaat

3. Voordelen ten opzichte van lijsten

    Ideaal voor heterogene data; lijsten zijn meestal homogeen.
  • Onveranderlijkheid biedt een prestatievoordeel bij iteratie.
  • Tuples met alleen onveranderlijke elementen kunnen als dictionary-sleutels dienen.
  • Schrijfbeveiligde data is gegarandeerd, wat per ongeluk wijzigingen voorkomt.

Python

  1. Python Datatypes onder de knie krijgen: Een praktische gids
  2. Python Operators onder de knie krijgen: Een uitgebreide gids
  3. Python Pass Statement onder de knie krijgen: Een praktische gids
  4. Python Functie-argumenten onder de knie krijgen: Positionele, Keyword en Default Parameters
  5. Python-dictionaries beheersen: aanmaken, manipuleren en geavanceerde technieken
  6. Python-iterators: hoe ze werken en hoe je je eigen maakt
  7. Python-closures uitgelegd: hoe geneste functies variabelen vangen
  8. Python datetime beheersen: praktische gids voor datums, tijden en tijdzones
  9. Python Overzicht: Hoog-Niveau, Leesbaar, Interactief & Object-Georiënteerd
  10. Python Numbers: Immutable Numerieke Datatypes Begrijpen
  11. Python Strings Beheersen: Aanmaken, Benaderen en Manipuleren