logo

Pitone | Moltiplica tutti i numeri nell'elenco

Data una lista, stampa il valore ottenuto dopo aver moltiplicato tutti i numeri in a Pitone elenco.

Esempi:



  Input :    list1 = [1, 2, 3]   Output :   6   Explanation  : 1*2*3=6   Input :   list1 = [3, 2, 4]   Output :   24>

Moltiplica tutti i numeri nell'elenco in Python

Esistono diversi approcci per eseguire la moltiplicazione all'interno di un elenco. In questo contesto, utilizzeremo i metodi comunemente utilizzati su come moltiplicare in Python, come descritto di seguito.

  • Utilizzo della traversata
  • Utilizzando numpy.prod()
  • Utilizzando la funzione lambda
  • Utilizzando Biblioteca di matematica
  • Utilizzando Io ho() funzione
  • Utilizzo dell'attraversamento per indice
  • Utilizzando Per ciclo
  • Utilizzando itertools.accumulare()
  • Utilizzando la funzione ricorsiva

Moltiplica tutti i numeri nell'elenco utilizzando Traversata

Inizializza il valore del prodotto su 1 (non 0 poiché 0 moltiplicato per qualsiasi cosa restituisce zero). Attraversa fino alla fine dell'elenco, moltiplica ogni numero per il prodotto. Il valore memorizzato nel prodotto alla fine ti darà la risposta finale.

Esempio : In questo esempio il codice seguente utilizza un approccio trasversale nella funzione ` moltiplicaLista ' per calcolare il prodotto degli elementi nelle liste '[1, 2, 3]' e '[3, 2, 4]', ottenendo rispettivamente i risultati 6 e 24.



Pitone






# Python program to multiply all values in the> # list using traversal> def> multiplyList(myList):> ># Multiply elements one by one> >result>=> 1> >for> x>in> myList:> >result>=> result>*> x> >return> result> # Driver code> list1>=> [>1>,>2>,>3>]> list2>=> [>3>,>2>,>4>]> print>(multiplyList(list1))> print>(multiplyList(list2))>

>

>

Produzione :

6 24>

Complessità temporale: O(n), dove n è il numero di elementi nell'elenco.
Spazio ausiliario: O(1),

Moltiplica tutti i numeri nell'elenco u quel numpy.prod()

Possiamo usare numpy.prod() da import numpy per ottenere la moltiplicazione di tutti i numeri della lista. Restituisce un valore intero o float a seconda del risultato della moltiplicazione.

Esempio : In questo esempio il codice seguente utilizza `numpy.prod()` per trovare il prodotto degli elementi negli elenchi '[1, 2, 3]' e '[3, 2, 4]', ottenendo output di 6 e 24, rispettivamente.

Python3




# Python3 program to multiply all values in the> # list using numpy.prod()> import> numpy> list1>=> [>1>,>2>,>3>]> list2>=> [>3>,>2>,>4>]> # using numpy.prod() to get the multiplications> result1>=> numpy.prod(list1)> result2>=> numpy.prod(list2)> print>(result1)> print>(result2)>

>

>

Produzione :

6 24>

Complessità temporale: O(n), dove n è la lunghezza degli elenchi di input.
Spazio ausiliario: O(1).

Moltiplica tutti i numeri nell'elenco u cantare la funzione lambda

Lambda' La definizione di S non include a ritorno istruzione, contiene sempre un'espressione che viene restituita. Possiamo anche inserire una definizione lambda ovunque sia prevista una funzione e non dobbiamo affatto assegnarla a una variabile. Questa è la semplicità delle funzioni lambda. IL ridurre() La funzione in Python accetta una funzione e una lista come argomento. La funzione viene chiamata con una funzione lambda, una lista e un n Viene restituito il nuovo risultato ridotto . Esegue un'operazione ripetitiva sulle coppie della lista.

Esempio : In questo esempio il codice seguente utilizza `functools.reduce` di Python con una funzione lambda per moltiplicare tutti i valori negli elenchi '[1, 2, 3]' e '[3, 2, 4]'. I risultati, 6 e 24, vengono stampati.

Python3




# Python3 program to multiply all values in the> # list using lambda function and reduce()> from> functools>import> reduce> list1>=> [>1>,>2>,>3>]> list2>=> [>3>,>2>,>4>]> result1>=> reduce>((>lambda> x, y: x>*> y), list1)> result2>=> reduce>((>lambda> x, y: x>*> y), list2)> print>(result1)> print>(result2)>

>

>

Produzione :

6 24>

Complessità temporale: O(n) – dove n è la lunghezza dell'elenco più lungo.
Spazio ausiliario: O(1) – la memoria utilizzata è costante, poiché non vengono create strutture dati aggiuntive.

Moltiplica tutti i numeri nell'elenco u cantare la funzione prod della libreria matematica

A partire da Python 3.8, una funzione prod è stata inclusa nel file modulo di matematica nella libreria standard, quindi non è necessario installare librerie esterne.

Esempio : In questo esempio il codice seguente utilizza la funzione `math.prod` di Python per calcolare il prodotto di tutti i valori negli elenchi '[1, 2, 3]' e '[3, 2, 4]'. I risultati, 6 e 24, vengono stampati.

Python3




# Python3 program to multiply all values in the> # list using math.prod> import> math> list1>=> [>1>,>2>,>3>]> list2>=> [>3>,>2>,>4>]> result1>=> math.prod(list1)> result2>=> math.prod(list2)> print>(result1)> print>(result2)>

>

>

Produzione:

6 24>

Complessità temporale : O(n), dove n è la lunghezza dell'elenco di input.
Spazio ausiliario: O(1)

Moltiplica tutti i numeri nell'elenco u cantare la funzione mul() del modulo operatore.

Per prima cosa dobbiamo importare il modulo operatore quindi utilizzando il file funzione mul() del modulo operatore moltiplicando tutti i valori nell'elenco. In questo esempio il codice seguente moltiplica tutti i numeri nell'elenco '[1, 2, 3]' utilizzando la funzione 'mul' del modulo 'operator'. Scorre l'elenco, aggiorna la variabile risultato e stampa il prodotto finale (output: 6).

Python3




# Python 3 program to multiply all numbers in> # the given list by importing operator module> from> operator>import>*> list1>=> [>1>,>2>,>3>]> m>=> 1> for> i>in> list1:> ># multiplying all elements in the given list> ># using mul function of operator module> >m>=> mul(i, m)> # printing the result> print>(m)>

mylive cricket
>

>

Produzione :

6>

Complessità temporale: SU), dove n è la lunghezza dell'elenco di input. Spazio ausiliario: O(1), che è costante.

Moltiplica tutti i numeri nell'elenco utilizzando For Loop

Per moltiplicare tutti i numeri in un elenco utilizzando a Per Ciclo , puoi scorrere ogni elemento dell'elenco e aggiornare una variabile del prodotto in esecuzione.

Esempio :In questo esempio, ilmultiply_list>la funzione accetta una lista come input e inizializza una variabileproduct>a 1. Quindi scorre ciascun elemento nell'elenco, aggiornando il prodotto moltiplicandolo con l'elemento corrente

Python3




def> multiply_list(list1):> ># Initialize product to 1> >product>=> 1> > ># Iterate through each element in the list> >for> element>in> list1:> >product>*>=> element> > >return> product> # Example> list1>=> [>1>,>2>,>3>,>4>,>5>]> result>=> multiply_list(list1)> print>(result)>

>

>

Produzione :

120>

Complessità temporale : O(n), dove n è la lunghezza dell'elenco di input.
Spazio ausiliario : O(1).

Moltiplica tutti i numeri nell'elenco utilizzando l'attraversamento per indice

In questo esempio il codice seguente definisce una funzione, 'multiplyList', per trovare il prodotto degli elementi della lista utilizzando un approccio trasversale. Moltiplica in sequenza ogni elemento dell'elenco. Le dimostrazioni con le liste '[1, 2, 3]' e '[3, 2, 4]' producono rispettivamente output di 6 e 24.

Python3




# Python program to multiply all values in the> # list using traversal> def> multiplyList(myList) :> > ># Multiply elements one by one> >result>=> 1> >for> i>in> range>(>0>,>len>(myList)):> >result>=> result>*> myList[i]> >return> result> > # Driver code> list1>=> [>1>,>2>,>3>]> list2>=> [>3>,>2>,>4>]> print>(multiplyList(list1))> print>(multiplyList(list2))>

>

>

Produzione :

6 24>

Complessità temporale : O(n), dove n è la lunghezza dell'elenco di input. Spazio ausiliario : O(1).

Moltiplica tutti i numeri nell'elenco u cantare itertools.accumulare

IL `itertools.accumulare La funzione ` viene utilizzata per operazioni cumulative su un iterabile. In questo caso accumula il prodotto degli elementi nelle liste. La funzione lambda `(lambda x, y: x * y)` definisce l'operazione di moltiplicazione e i risultati finali sono ottenuti dai valori accumulati.

Esempio : In questo esempio il codice seguente utilizza 'itertools.accumulate' con una funzione lambda per moltiplicare i valori negli elenchi '[1, 2, 3]' e '[3, 2, 4]'. I risultati accumulati vengono convertiti in elenchi e gli ultimi elementi vengono stampati (uscite: 6 e 24).

Pitone




# Python3 program to multiply all values in the> # list using lambda function and accumulate()> from> itertools>import> accumulate> list1>=> [>1>,>2>,>3>]> list2>=> [>3>,>2>,>4>]> result1>=> list>(accumulate(list1, (>lambda> x, y: x>*> y)))> result2>=> list>(accumulate(list2, (>lambda> x, y: x>*> y)))> print>(result1[>->1>])> print>(result2[>->1>])>

>

>

Produzione:

  6     24>

Complessità temporale: O(n), dove n è la lunghezza dell'elenco di input. Spazio ausiliario: SU)

Moltiplica tutti i numeri nell'elenco utilizzando la funzione ricorsiva

La funzione prodotto_ ricorsivo() prende un elenco di numeri come input e restituisce il prodotto di tutti i numeri nell'elenco, utilizzando un approccio ricorsivo.

Esempio : In questo esempio il codice seguente definisce una funzione ricorsiva, 'product_recursive', per calcolare il prodotto degli elementi di una lista. Gestisce casi base e ricorsivi, dimostrando la sua funzionalità con gli elenchi '[1, 2, 3]' e '[3, 2, 4]', che danno rispettivamente output 6 e 24.

Python3




def> product_recursive(numbers):> ># base case: list is empty> >if> not> numbers:> >return> 1> ># recursive case: multiply first element by product of the rest of the list> >return> numbers[>0>]>*> product_recursive(numbers[>1>:])> list1>=> [>1>,>2>,>3>]> product>=> product_recursive(list1)> print>(product)># Output: 6> list2>=> [>3>,>2>,>4>]> product>=> product_recursive(list2)> print>(product)># Output: 24>

>

>

Produzione :

6 24>

Complessità temporale: O(n), dove n è il numero di elementi nell'elenco.
Complessità spaziale :SU)

Moltiplica tutti i numeri nell'elenco utilizzando reduce() e la funzione mul()

Un approccio per risolvere questo problema è utilizzare il built-in funzione ridurre() dal modulo functools, che può applicare una funzione a un iterabile in modo cumulativo. Possiamo usare la funzione operator.mul() per moltiplicare gli elementi insieme.

Esempio : In questo esempio il codice seguente utilizza `functools.reduce` e `operator.mul` per moltiplicare gli elementi nell'elenco [1, 2, 3], stampando il prodotto cumulativo (output: 6). Mostra l'efficacia della funzione 'riduci' per operazioni cumulative concise.

Python3




from> functools>import> reduce> from> operator>import> mul> list1>=> [>1>,>2>,>3>]> result>=> reduce>(mul, list1)> print>(result)>

>

>

formula muratrice

Produzione :

6>

Complessità temporale : SU)
Spazio ausiliario: O(1)