English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En este tutorial, aprenderá los diferentes tipos de datos que se pueden usar en Python.
Cada valor en Python tiene un tipo de datos. Dado que todo en la programación de Python es un objeto, el tipo de datos es en realidad una clase, y las variables son ejemplos (objetos) de estas clases.
Hay varios tipos de datos en Python. A continuación, se enumeran algunos tipos importantes.
Los enteros, los números de coma flotante y los números complejos pertenecen al ámbito de los números en Python. En Python, se definen como las clases int, float y complex.
我们可以使用type()函数来判断一个变量或值属于哪个类。同样地,isinstance() 函数用于检查对象是否属于特定的类。
a = 5 print(a, "su tipo es <class '", type(a)) a = 2.0 print(a, "su tipo es <class '", type(a)) a = 1+2j print(a, "¿es un número complejo?", isinstance(1+2j,complex))
Output volume
5 su tipo es <class 'int'> 2.0 su tipo es <class 'float'> (1+2j) ¿es un número complejo? True
整数可以是任意长度,但受可用内存的限制。
浮点数最多可精确到 15 个小数位。整数 和 浮点由小数点分隔。1 是整数,1.0 是浮点数。
复数以 x + yj 形式书写,其中x是实部,y是虚部。这里有些示例。
>> a = 1234567890123456789 >> a 1234567890123456789 >> b = 0.1234567890123456789 >> b 0.12345678901234568 >> c = 1+2j >> c (1+2j)
注意,float变量b被截断了。
列表是项目的有序序列。它是Python中最常用的数据类型之一,非常灵活。列表中的项目允许不是同一类型。
声明列表非常简单。用逗号分隔的项目放在方括号内[ ]。
a = [1, 2.2, 'python']
我们可以使用切片运算符 [ ] 从列表中提取一个项目 或 一系列项目。注意,在Python中,索引从 0 开始。
a = [5,10,15,20,25,30,35,40] # a[2] = 15 print("a[2] = "", a[2}) # a[0:3] = [5, 10, 15] print("a[0:3] = "", a[0:3}) # a[5:] = [30, 35, 40] print("a[5:] = "", a[5:])
Output volume
a[2] = 15 a[0:3] = [5, 10, 15] a[5:] = [30, 35, 40]
列表是可变的,也就是说,列表元素的值可以更改。
a = [1, 2, 3] a[2] = 4 print(a)
Output volume
[1, 2, 4]
元组(Tuple)是项目的有序序列,与列表(List)相同。唯一的区别是元组是不可变的。元组一旦创建就不能修改。
元组用于写保护数据,通常比列表快,因为它们不能动态更改。
它在括号内 () 定义,其中各项之间用逗号分隔。
t = (5,'program', 1+3j)
我们可以使用切片运算符 [] 提取项目,但不能更改其值。
t = (5,'program', 1+3j) # t[1)] = 'program' print("t[1)] = "", t[1}) # t[0:3)] = (5, 'program', (1+3j)) print("t[0:3] = ", t[0:3}) # Produce error # La tupla es inmutable t[0] = 10
Output volume
t[1] = { t[0:3] = {5, 'program', (1+3j)) Traceback (most recent call last): Archivo "test.py", línea 11, in <module> t[0] = 10 TypeError: el objeto 'tuple' no admite la asignación de elementos
CadenaEs una secuencia de caracteres Unicode. Podemos usar comillas simples o dobles para representar una cadena. Se pueden usar comillas triples ''' o \
s = "Esto es una cadena" print(s) s = '''Una cadena multilínea cadena''' print(s)
Output volume
Esto es una cadena Una cadena multilínea cadena
Al igual que las listas y tuplas, el operador de rebanado [ ] se puede usar con cadenas. Pero las cadenas son inmutables.
s = 'Hello world!' # s[4] = 'o' print("s[4] = ", s[4}) # s[6:11] = 'world' print("s[6:11] = ", s[6:11}) # Se produce un error # La cadena en Python es inmutable s[5] = 'd'
Output volume
s[4] = { s[6:11] = { Traceback (most recent call last): File '<string>', line 11, in <module> TypeError: el objeto 'str' no admite la asignación de elementos
Conjunto Es un conjunto desordenado de elementos únicos. El conjunto se encierra entre corchetes { } y se separa por comas. Los elementos del conjunto son desordenados.
a = {5,2,3,1,4} # Salida de la variable de conjunto print("a = ", a) # Salida del tipo de datos de a print(type(a))
Output volume
a = {1, 2, 3, 4, 5} <class 'set'>
Podemos realizar operaciones de conjunto en dos conjuntos, como la unión y la intersección. Los conjuntos tienen valores únicos. Eliminan los duplicados.
a = {1,2,2,3,3,3} print(a)
Output volume
{1, 2, 3}
Dado que el conjunto es un conjunto desordenado, la indexación no tiene sentido. Por lo tanto, el operador de rebanado [] no funciona.
>>> a = {1,2,3} >>> a[1] Traceback (most recent call last): File '<string>', line 301, in runcode File '<interactive input>', line 1, in <module> TypeError: el objeto 'set' no admite la indexación
DiccionarioEs un conjunto desordenado de pares clave-valor.
Cuando tenemos una gran cantidad de datos, generalmente los usamos. El diccionario está optimizado para la búsqueda de datos. Debe saber la clave del valor de búsqueda.
In Python, curly braces {} define dictionaries, where each item is in the form of key:value. Keys and values can be of any type.
>>> d = {1: 'value','key':2} >>> type(d) <class 'dict'>
We can use keys to retrieve the corresponding values.
d = {1: 'value','key':2} print(type(d)) print("d[1]= ", d[1); print("d['key'] = ", d['key']); # Produce error print("d[2]= ", d[2);
Output volume
<class 'dict'> d[1]= value d['key'] = 2 Traceback (most recent call last): File '<string>', line 9, in <module> KeyError: 2
We can use different type conversion functions, such as conversions between different data types, int(), float(), str(), etc.
>>> float(5) 5.0
Converting from float to int truncates the value (making it closer to zero).
>>> int(10.6) 10 >>> int(-10.6) -10
The conversion between strings must contain compatible values.
>>> float('2.5') 2.5 >>> str('25) '25' >>> int('1p') Traceback (most recent call last): File '<string>', line 301, in runcode File '<interactive input>', line 1, in <module> ValueError: invalid literal for int() with base 10: '1p'
We can even convert one sequence to another sequence.
>>> set([1,2,3}) {1, 2, 3} >>> tuple({5,6,7) (5, 6, 7) >>> list('hello') ['h', 'e', 'l', 'l', 'o']
To convert to a dictionary, each element must be paired:
>>> dict([[1,2],[3,4]) {1: 2, 3: 4} >>> dict([(3,26),(4,44)]) {3: 26, 4: 44}