logo

Python | Pomnožite vsa števila na seznamu

Podan seznam, natisnite vrednost, dobljeno po množenju vseh števil v a Python seznam.

Primeri:



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

Pomnožite vsa števila na seznamu v Pythonu

Obstaja več pristopov za izvajanje množenja znotraj seznama. V tem kontekstu bomo uporabili običajno uporabljene metode za množenje v Pythonu, kot je opisano spodaj.

  • Uporaba Traversal
  • Uporaba numpy.prod()
  • Uporaba lambda funkcije
  • Uporaba Matematična knjižnica
  • Uporaba Imam() funkcijo
  • Uporaba prehoda po indeksu
  • Uporaba Za zanko
  • Uporaba itertools.accumulate()
  • Uporaba rekurzivne funkcije

Pomnožite vsa števila na seznamu z uporabo Prehod

Inicializirajte vrednost produkta na 1 (ne na 0, saj 0, pomnožena s čimer koli, vrne nič). Pojdite do konca seznama, vsako število pomnožite s produktom. Vrednost, shranjena v izdelku na koncu, vam bo dala končni odgovor.

Primer : V tem primeru spodnja koda uporablja prehodni pristop v funkciji ` multiplyList ` za izračun zmnožka elementov na seznamih `[1, 2, 3]` in `[3, 2, 4]`, kar ima za posledico rezultate 6 oziroma 24.



Python






# 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))>

>

>

rimske številke 1-100

Izhod:

6 24>

Časovna zahtevnost: O(n), kjer je n število elementov na seznamu.
Pomožni prostor: O(1),

Pomnožite vsa števila na seznamu u ta numpy.prod()

Lahko uporabimo numpy.prod() iz import numpy, da dobite množenje vseh števil na seznamu. Vrne celo število ali plavajočo vrednost, odvisno od rezultata množenja.

Primer: V tem primeru spodnja koda uporablja `numpy.prod()` za iskanje zmnožka elementov na seznamih `[1, 2, 3]` in `[3, 2, 4]`, kar povzroči izhode 6 in 24, oz.

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)>

>

>

Izhod:

6 24>

Časovna zahtevnost: O(n), kjer je n dolžina vhodnih seznamov.
Pomožni prostor: O(1).

Pomnožite vsa števila na seznamu u funkcijo sing lambda

Lambda' definicija ne vključuje a vrnitev vedno vsebuje izraz, ki je vrnjen. Lambda definicijo lahko postavimo tudi kamorkoli, kjer se pričakuje funkcija, in nam je sploh ni treba dodeliti spremenljivki. To je preprostost lambda funkcij. The zmanjšati () funkcija v Pythonu sprejme funkcijo in seznam kot argument. Funkcijo pokličemo s funkcijo lambda ter seznamom in n vrne se nov zmanjšan rezultat . To izvede ponavljajočo se operacijo nad pari seznama.

Primer: V tem primeru spodnja koda uporablja Pythonov `functools.reduce` s funkcijo lambda za množenje vseh vrednosti na seznamih `[1, 2, 3]` in `[3, 2, 4]``. Rezultata, 6 in 24, sta natisnjena.

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)>

>

>

Izhod:

6 24>

Časovna zahtevnost: O(n) – kjer je n dolžina daljšega seznama.
Pomožni prostor: O(1) – uporabljeni pomnilnik je konstanten, saj se ne ustvarjajo dodatne podatkovne strukture.

Pomnožite vsa števila na seznamu u sing prod funkcija matematične knjižnice

Od različice Python 3.8 je bila funkcija prod vključena v matematični modul v standardni knjižnici, zato ni treba namestiti zunanjih knjižnic.

Primer: V tem primeru spodnja koda uporablja Pythonovo funkcijo `math.prod` za izračun zmnožka vseh vrednosti na seznamih `[1, 2, 3]` in `[3, 2, 4]`. Rezultata, 6 in 24, sta natisnjena.

Python3


java concat nizi



# 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)>

>

>

Izhod:

6 24>

Časovna zapletenost : O(n), kjer je n dolžina vhodnega seznama.
Pomožni prostor: O(1)

Pomnožite vsa števila na seznamu u funkcija sing mul() operaterskega modula.

Najprej moramo uvoziti operaterski modul in nato uporabiti funkcija mul(). operaterskega modula, ki pomnoži vse vrednosti na seznamu. V tem primeru spodnja koda pomnoži vsa števila na seznamu `[1, 2, 3]` z uporabo funkcije `mul` modula `operator`. Ponavlja se po seznamu, posodablja spremenljivko rezultata in natisne končni izdelek (izhod: 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)>

razvrščanje arraylist java
>

>

Izhod:

6>

Časovna zahtevnost: O(n), kjer je n dolžina vhodnega seznama. Pomožni prostor: O(1), ki je konstantna.

Pomnožite vsa števila na seznamu z uporabo For Loop

Če želite pomnožiti vsa števila na seznamu z a Za Loop , lahko ponovite vsak element seznama in posodobite delujočo spremenljivko izdelka.

Primer : V tem primeru jemultiply_list>funkcija sprejme seznam kot vhod in inicializira spremenljivkoproduct>na 1. Nato se ponovi skozi vsak element na seznamu, izdelek posodobi tako, da ga pomnoži s trenutnim elementom

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)>

>

>

Izhod:

120>

Časovna zapletenost : O(n), kjer je n dolžina vhodnega seznama.
Pomožni prostor : O(1).

Pomnožite vsa števila na seznamu z uporabo prečkanja po indeksu

V tem primeru spodnja koda definira funkcijo, `multiplyList`, za iskanje produkta elementov seznama z uporabo prehodnega pristopa. Zaporedoma pomnoži vsak element na seznamu. Predstavitve s seznami `[1, 2, 3]` in `[3, 2, 4]` dajejo rezultate 6 oziroma 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))>

>

>

Izhod:

6 24>

Časovna zapletenost : O(n), kjer je n dolžina vhodnega seznama. Pomožni prostor : O(1).

Pomnožite vsa števila na seznamu u sing itertools.akumulirati

The `itertools.accumulate ` funkcija se uporablja za kumulativne operacije na iterable. V tem primeru kopiči produkt elementov na seznamih. Lambda funkcija `(lambda x, y: x * y)` definira operacijo množenja, končni rezultati pa so pridobljeni iz zbranih vrednosti.

razred matematike java

Primer: V tem primeru spodnja koda uporablja »itertools.accumulate« s funkcijo lambda za množenje vrednosti na seznamih »[1, 2, 3]« in »[3, 2, 4]«. Zbrani rezultati se pretvorijo v sezname, zadnji elementi pa se natisnejo (izhoda: 6 in 24).

Python




# 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>])>

>

>

Izhod:

  6     24>

Časovna zahtevnost: O(n), kjer je n dolžina vhodnega seznama. Pomožni prostor: O(n)

Pomnožite vsa števila na seznamu z uporabo rekurzivne funkcije

Funkcija product_ rekurzivno() vzame seznam števil kot vhod in vrne zmnožek vseh števil na seznamu z uporabo rekurzivnega pristopa.

Primer : V tem primeru spodnja koda definira rekurzivno funkcijo, `product_recursive`, za izračun produkta elementov seznama. Obravnava osnovne in rekurzivne primere, svojo funkcionalnost pa dokazuje s seznamoma `[1, 2, 3]` in `[3, 2, 4]`, rezultat pa je 6 oziroma 24.

Python3


zimsko narečje



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>

>

>

Izhod:

6 24>

Časovna zahtevnost: O(n), kjer je n število elementov na seznamu.
Kompleksnost prostora :O(n)

Pomnožite vsa števila na seznamu z uporabo funkcije reduce() in mul().

Eden od pristopov za rešitev te težave je uporaba vgrajenega reduciraj(). iz modula functools, ki lahko uporabi funkcijo za iterable na kumulativni način. Za množenje elementov lahko uporabimo funkcijo operator.mul().

Primer: V tem primeru spodnja koda uporablja »functools.reduce« in »operator.mul« za množenje elementov na seznamu [1, 2, 3] in natisne kumulativni produkt (izhod: 6). Predstavlja učinkovitost funkcije `zmanjšaj` za jedrnate kumulativne operacije.

Python3




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

>

>

Izhod:

6>

Časovna zapletenost : O(n)
Pomožni prostor: O(1)