Inne działy

 

 

Python typ danych krotki (tuples)

 

 Kolekcja tuple jest niezmiennie typem danych sekwencji. Krotka może zawierać dane mieszanych typów.

owoce = ("pomarańcze", "jabłka", "banany")

Krotki są tworzone przy użyciu nawiasów okrągłych. Tutaj mamy kolekcję, która składa się z trzech typów owoców.

owoce = "jabłka", "pomarańcze", "banany"
print owoce # wyświetli ("jabłka", "pomarańcze", "banany")

Nawiasy nie są obowiązkowe. Możemy je pominąć.

 

#!/usr/bin/python

# krotki.py

first = (1, 2, 3)
second = (4, 5, 6)

print "len(first) : ", len(first)
print "max(first) : ", max(first)
print "min(first) : ", min(first)
print "first + second :", first + second
print "first * 3 : ", first * 3
print "1 in first : ", 1 in first
print "5 not in second : ", 5 not in second

 

W tym przykładzie przedstawiono kilka podstawowych operacji z krotkami. Funkcja len() zwraca liczbę elementów w pierwszej kolekcji. Funkcja max() zwraca maksymalną wartość, wartość minimalną funkcja min(). Operator dodawania dodaje krotki, operator mnożenia mnoży kolekcję. Operator in określa, czy wartości występują w kolekcji.

$ ./krotki.py
len(first) :  3
max(first) :  3
min(first) :  1
first + second : (1, 2, 3, 4, 5, 6)
first * 3 :  (1, 2, 3, 1, 2, 3, 1, 2, 3)
1 in first :  True
5 not in second :  False

To dane wyjściowe skryptu.

Następnie wykonamy kilka indeksowań.

 

#!/usr/bin/python
# krotki2.py

piec = (1, 2, 3, 4, 5)

print "piec[0] : ", piec[0]
print "piec[-1] : ", piec[-1]
print "piec[-2] : ", piec[-2]
print "piec[:] : ", piec[:]
print "piec[0:4] : ", piec[0:4]
print "piec[1:2] : ", piec[1:2]
print "piec[:2] : ", piec[:2]
print "piec[:-1] : ", piec[:-1]
print "piec[:9] : ", piec[:9]

 

Aby uzyskać wartość kolekcji, możemy użyć nawiasy kwadratowe []. Należy pamiętać, że liczymy indeksy od 0. Jeśli istnieje pięć obiektów w kolekcji, indeksy są w zakresie 0... 4. Jeśli używamy indeksu odwrotnego, otrzymujemy wartość od końca kolekcji. Więc ostatni element uzyskuje indeks -1, -2 przedostatni element. Python pozwala na tworzenie slices z krotek. Do tego będziemy używać: ogranicznika. [0: 4] daje (1, 2, 3, 4). Należy pamiętać, że ostatni element nie jest uwzględniany. Możemy zrezynować jednego lub obu indeksów w slice. Zapis [: 4] daje (1, 2, 3, 4). Zapis pierwszego elementu. [0:] daje (1, 2, 3, 4, 5). Tym razem, ostatni element jest włączony. Jeśli wyjdziemy poza granice, po prostu mamy wszystkie elementy w krotce.

$ ./krotki2.py
piec[0] :  1
piec[-1] :  5
piec[-2] :  4
piec[:] :  (1, 2, 3, 4, 5)
piec[0:4] :  (1, 2, 3, 4)
piec[1:2] :  (2,)
piec[:2] :  (1, 2)
piec[:-1] :  (1, 2, 3, 4)
piec[:9] :  (1, 2, 3, 4, 5)

Dane wyjściowe.

Krotki mogą zawierać wiele typów danych.

#!/usr/bin/python
# mix.py

mix = (1, 2, "solaris", (1, 2, 3))

print "mix[1] :", mix[1]
print "mix[2] :", mix[2]
print "mix[3] :", mix[3]
print "mix[3][0] :", mix[3][0]
print "mix[3][1] :", mix[3][1]
print "mix[3][2] :", mix[3][2]

 W naszym przykładzie musimy umieścić numery, ciąg i krotki w zestawie krotek.

$ ./mix.py
mix[1] : 2
mix[2] : solaris
mix[3] : (1, 2, 3)
mix[3][0] : 1
mix[3][1] : 2
mix[3][2] : 3

Aby uzyskać elementy zagnieżdżone w krotce, używamy dwa nawiasy kwadratowe.

Mamy wyjątek, gdy pracujemy z krotką, zawierającą jeden element. Nawiasy są również używane w wyrażeniach. Jak możemy odróżnić wyrażenie i jeden element krotki? Twórcy języka programowania python zdecydowali się użyć przecinka do oznaczenia, kiedy używamy krotkę.

#!/usr/bin/python
# jednakrotka.py

print (3 + 7)
print (3 + 7, )

 

W pierwszym przypadku wyrażenie. Drukujemy numer 10 na konsoli. W drugim przypadku mamy do czynienia z krotką. Wyświetlamy krotkę zawierającą numer 10.

$ ./ jednakrotka.py
10
(10,)

Dane wyjściowe.

 

Zobacz nasze wszystkie kursy

WWW


HTML
HTML - Znaczniki
CSS - Tutorial
CSS - Selektory
PHP
JavaScript

XML

XSLT

Bazy danych


SQL
SQLite
MySQL
PostgreSQL

 

 

Programowanie


C
C++
C#
Java
VisualBasic
Python

Linux


Podstawy Linuxa
Bash
Linuks artykuły

Windows


Excel funkcje
Windows wskazówki
Outlook

Pozotałe działy


Programy
Rozrywka

 

 

 

This email address is being protected from spambots. You need JavaScript enabled to view it.