Fala, meus consagrados! Beleza?
Neste artigo, vamos estudar os tipos de dados em arrays NumPy, um tema essencial para quem está aprendendo Python aplicado à ciência de dados, aprendizado de máquina e concursos de TI. Antes de avançar para os tipos próprios do NumPy, é importante revisar os tipos básicos da linguagem Python, pois eles servem como base para entender como o ndarray armazena, interpreta e processa valores por meio do atributo dtype. O próprio artigo parte dessa relação entre tipos nativos do Python, como int, float, complex, bool e str, e os tipos específicos do NumPy usados em funções como np.array() e astype().

Antes de estudar os tipos específicos do NumPy, é importante lembrar alguns tipos básicos da linguagem Python.
| Categoria | Tipo Python | Exemplo |
| Inteiro | int | x = 15 |
| Ponto flutuante | float | y = 1.84 |
| Complexo | complex | z = 15 + 7j |
| Booleano | bool | x = True |
| Texto | str | x = “Python” |
Exemplos:
x = 15
y = 1.84
z = 15 + 7j
ativo = True
linguagem = "Python"
print(type(x))
print(type(y))
print(type(z))
print(type(ativo))
print(type(linguagem))
Resultado da execução:
<class 'int'>
<class 'float'>
<class 'complex'>
<class 'bool'>
<class 'str'>
Esses tipos são nativos do Python. O NumPy, por sua vez, possui tipos próprios e mais específicos, voltados para computação numérica e armazenamento eficiente.
O NumPy possui tipos de dados adicionais, muitos deles representados por um único caractere.
Esses códigos são usados em funções como np.array() e astype().
| Código | Tipo NumPy | Significado |
| i | Inteiro | Números inteiros |
| f | Ponto flutuante | Números decimais |
| c | Complexo | Números complexos |
| b | Booleano | Valores booleanos |
| S | String | String de bytes |
| U | String Unicode | Texto Unicode |
| M | Datetime | Datas e horários |
| m | Timedelta | Diferenças de tempo |
| O | Objeto | Objetos Python |
| V | Void | Bloco fixo de memória para outro tipo |
Exemplos:
import numpy as np
inteiros = np.array([1, 2, 3], dtype='i')
decimais = np.array([1.5, 2.5, 3.5], dtype='f')
textos = np.array(["Python", "Java"], dtype='U')
booleanos = np.array([True, False, True], dtype='b')
print(inteiros.dtype)
print(decimais.dtype)
print(textos.dtype)
print(booleanos.dtype)
Resultado da execução:
int32
float32
<U6
int8
Em alguns ambientes, os resultados podem variar levemente, como int32, int64, float32 ou float64, dependendo da plataforma, da arquitetura e do tipo escolhido.
O atributo dtype indica o tipo de dado armazenado pelos elementos de um array NumPy. Em outras palavras, o dtype informa se os elementos do ndarray são:
- Inteiros;
- Números de ponto flutuante;
- Strings;
- Booleanos;
- Números complexos;
- Objetos;
- Datas;
- Outro tipo suportado pelo NumPy.
Exemplo:
import numpy as np
arrei = np.array([10, 12, 14])
print(arrei)
print(type(arrei))
print(arrei.dtype)
Resultado da execução:
[10 12 14]
<class 'numpy.ndarray'>
int64
O array foi criado com números inteiros. Por isso, o NumPy inferiu automaticamente um tipo inteiro, como int64.
Agora observe um array de strings:
import numpy as np
arrei = np.array(["Python", "Java", "PHP", "C"])
print(arrei)
print(type(arrei))
print(arrei.dtype)
Resultado da execução:
['Python' 'Java' 'PHP' 'C']
<class 'numpy.ndarray'>
<U6
O tipo <U6 indica uma string Unicode com até 6 caracteres. Isso ocorre porque “Python” é o maior texto do array, com 6 caracteres.
Espero que tenham gostado!
Forte abraço e até a próxima jornada!
![[PLANTÃO DE EDITAIS] 2° lote – Cabeçalho](https://blog-static.infra.grancursosonline.com.br/wp-content/uploads/2026/08/17101712/plantao-editais-lote2-cabecalho.webp)
![[PLANTÃO DE EDITAIS] 2° lote – Post](https://blog-static.infra.grancursosonline.com.br/wp-content/uploads/2026/08/17102051/plantao-editais-lote2-post.webp)


