Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Questão mal formulada?

A reposta marcada como correta é que o tipo de array tem que ser passado pra que ele funcione. Contudo, o tipo do array é um argumento opcional, como mostra a documentação do numpy.array (https://numpy.org/doc/stable/reference/generated/numpy.array.html):

numpy.array(object, dtype=None, *, copy=True, order='K', subok=False, ndmin=0, like=None)

(...)

dtype: data-type, optional

The desired data-type for the array. If not given, then the type will be determined as the minimum type required to hold the objects in the sequence.

Caso o tipo não seja passado, será determinado como o menor tipo capaz de descrever os objetos na sequência passada via object. Dessa forma, mesmo o comando com uma lista vazia:

x = numpy.array([])

retorna uma array com dtype float64.

A questão foi mesmo formulada de modo ambíguo ou eu é que me perdi em algum ponto?

Abraço!

2 respostas
solução!

Olá, como você está?

Peço desculpas pela demora em obter um retorno.

Este exercício trata sobre a biblioteca array do python e não da biblioteca numpy, isto é dito no trecho: "utilizando a biblioteca arr". E neste caso em específico, ao trabalhamos com essa biblioteca é obrigatório especificar o tipo de dados ao criar um array. Isso ocorre porque a biblioteca não pode criar o array corretamente sem saber qual tipo de dados você deseja armazenar nele.

Para criar um array na biblioteca array, é necessário passar dois argumentos para a função array(). O primeiro argumento deve ser um caractere de código que representa o tipo de dados que você deseja armazenar no array e o segundo argumento deve ser uma sequência de valores que você deseja armazenar no array.

Por exemplo, se quiséssemos um array de inteiros, teríamos que passar o argumento i, que indica um array de inteiros:

import array as arr

notas = arr.array('i', [8, 9, 7, 10, 6])

print(notas)

Resultado:

array('i', [8, 9, 7, 10, 6])

Se você não especificar o tipo de dados, a biblioteca array lançará um TypeError informando ser necessário especificar o tipo de dados para criar o array, como mostro abaixo:

import array as arr

notas = arr.array([8, 9, 7, 10, 6])

print(notas)

Resultado:

TypeError: array() argument 1 must be a unicode character, not list

Caso queira avançar ainda mais no estudo sobre essa biblioteca, indico a leitura da documentação abaixo:

Espero ter ajudado e não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Em caso de dúvidas estou à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Olá, Felippe!

Mancada minha! Tava com numpy na cabeça e não prestei atenção no enuncidado do exercício.

Muito obrigado pelo esclarecimento e desculpe pela confusão.

Abraço!