Python Multiply List por escalar

Python Multiply List por escalar

Trabalhar com listas é um dos conceitos mais importantes na linguagem de programação python e também é um conceito fundamental. Aprender a multiplicar uma lista completa com um valor escalar é uma boa prática não apenas para um novo programador, mas também para um programador de nível moderado.

Esta postagem o guiará sobre como multiplicar uma lista por um escalar em Python, e o conteúdo deste post é o:

  • Multiplicar listar por escalar usando a compreensão da lista
  • Multiplique a lista por escalar usando loop em python
  • Multiplicar a lista por escalares usando a biblioteca Numpy
  • Multiplicar a lista por escalar usando o método map ()

Multiplicar listar por escalar usando a compreensão da lista

A compreensão da lista é uma técnica na qual uma nova lista é formada através da execução de uma ação em todos. Para entender melhor o método de compreensão da lista, dê uma olhada na sintaxe

Sintaxe

ReturnEdList = [X * escalar para x na lista principal]

Na sintaxe acima:

  • ““Lista devolvida”É o último que será criado como resultado da compreensão da lista
  • ““x”É a variável na qual todos os itens da lista serão passados ​​para a multiplicação
  • ““escalar”É uma constante numérica
  • ““para-in”É o iterador que colocará o valor dos itens na lista na variável“ x ”

Exemplo: Multiplique uma lista usando a compreensão da lista

Primeiro, crie uma lista usando a seguinte linha:

demolista = [3, 6, 9, 12, 15, 18, 21]

Depois disso, crie uma nova lista “ResultList”Usando a compreensão da lista e defina o valor escalar como 5:

resultlist = [x * 5 para x em demolista]

Depois disso, imprima a “Lista de resultado”:

IMPRIMENTO (LISTA DE RESULTO)

Ao executar este código, o seguinte resultado será exibido no terminal:

Toda a lista foi multiplicada por um valor escalar. Caso você não deseje criar uma nova lista e otimizar o código, nesse caso, use as seguintes linhas de código:

demolista = [3, 6, 9, 12, 15, 18, 21]
demolista = [x * 5 para x em demolista]
Imprimir (demolista)

Isso produzirá o seguinte resultado:

Dessa forma, você multiplicou a mesma lista com um valor escalar sem criar uma nova lista.

Multiplique a lista por escalares usando loops em python

O segundo para multiplicar a lista por um valor escalar é usando um loop e multiplicando cada elemento individual com o valor escalar dentro do corpo do loop.

Para testar isso, use o seguinte código de linhas:

demolista = [3, 6, 9, 12, 15, 18, 21]
para i no intervalo (0, len (demolista)):
demolista [i] = demolista [i] * 3 #scalar valor
Imprimir (demolista)

No trecho de código acima:

  • Crie uma variável de lista "demolista".
  • Inicialize A for Loop e inicie -o de 0 até o comprimento da lista usando o método len ().
  • Para cada iteração, pegue o elemento no “eu”Índice e multiplique -o por um valor escalar e coloque o resultado de volta no“euÍndice.
  • Imprima a lista fora do loop

Após a execução do trecho de código acima, o seguinte resultado será exibido no terminal:

A saída confirma que a lista foi multiplicada por um valor escalar

Multiplicar a lista por escalares usando a biblioteca Numpy

Neste método, a lista é primeiro convertida em uma matriz usando a biblioteca Numpy e depois multiplicada por um valor escalar. Depois disso, a matriz é novamente convertida de volta a uma lista para obter o resultado de que o usuário deseja. Para usar isso, primeiro importe a biblioteca Numpy para o seu programa Python e crie a lista:

importar numpy como np
demolista = [3, 6, 9, 12, 15, 18, 21]

Converta a lista em uma matriz Numpy e multiplique -a com um número:

Array = np.Array (demolista)
Array = Array * 3

Converta a matriz de volta em uma lista usando o método Tolist () e imprima a lista no terminal usando as seguintes linhas:

demolista = matriz.listar()
Imprimir (demolista)

O trecho de código completo é como:

importar numpy como np
demolista = [3, 6, 9, 12, 15, 18, 21]
Array = np.Array (demolista)
Array = Array * 3
demolista = matriz.listar()
Imprimir (demolista)

A execução do código acima produzirá a seguinte saída no terminal:

A lista foi multiplicada com sucesso com um escalar

Multiplicar a lista por escalar usando o método map ()

Para usar o método map () para multiplicar todos os valores de uma lista, primeiro crie uma função usando as seguintes linhas de código:

demolista = [3, 6, 9, 12, 15, 18, 21]
DEF LISTMULTIPLE (ITEM):
valor = 6
Item de devolução*Valor

A função "listmultiple" recebe um atributo e multiplica -o com um valor que é definido como "6". A próxima etapa é usar o método map () para enviar todos os itens da lista para esta função e depois armazenar o resultado no mesmo índice do mapa e, no final, converte o mapa em uma lista usando o método List () :

demolista = list (map (listmultiple, demolista))

Quando estiver pronto, imprima a lista no terminal:

Imprimir (demolista)

Snippet de código completo ou o método map () para multiplicar uma lista por escalar é:

demolista = [3, 6, 9, 12, 15, 18, 21]
DEF LISTMULTIPLE (ITEM):
valor = 6
Item de devolução*Valor
demolista = list (map (listmultiple, demolista))
Imprimir (demolista)

Este código produzirá os seguintes resultados no terminal:

A lista foi multiplicada com um escalar com sucesso.

Conclusão

Para multiplicar uma lista com um escalar no Python, o usuário pode usar várias maneiras que incluem o uso da biblioteca Numpy, o método MAP (), Loops in Python e a compreensão da lista. Todas essas maneiras são elaboradas com exemplos neste post. Mas ainda existem muitas maneiras pelas quais o mesmo feito pode ser alcançado com a ajuda de módulos externos que podem ser baixados em seu ambiente Python.