Hur man utvärderar en lista minus en annan i Python


Bästa svaret

Jag antar att du menar det aritmetiska minus av de två listorna (komponentvis subtraktion.)

När du befinner dig att ställa den här frågan är det här ett skyltmeddelande som indikerar det är dags att börja regelbundet med numpy-modulen.

Numpy används så ofta att det verkligen är en defacto-del av språket. Numpy tillhandahåller (bland ett galen bibliotek med matematisk funktionalitet) en pythonisk elegans till grundläggande aritmetik.

Eftersom – att subtrahera en lista B från lista A, vill du inte skriva C = A – B?

Naturligtvis gör du det. Så importera dom och gör konverteringar så här:

import numpy as np

a=[6,3,6,8,9,6,4]

b=[1,0,1,2,1,2,1]

a = np.array(a) #Convert list to np array

b = np.array(b)

c = a - b

Och det är det. Det fungerar för andra operationer som * och så vidare. Och ingen anledning att freak out att nu dina listor finns i någon konstig np.array behållare, dessa arrays möjliggör identisk indexering med [] och skivning med [:] som listor gör.

Och du kan alltid få en lista tillbaka genom att säga c.list ().

Erfarna pythonprogrammerare, när de gör en hel del aritmetik, brukar använda domna matriser snarare än listor för att hålla siffror.

Grattis till utjämning!

Svar

Hur utvärderar du en lista minus en annan i Python?

Vanligtvis definieras pluset genom \_\_add\_\_-metoden.

[1, 2, 3] + [3, 2, 1] ger dig en ny lista [1, 2, 3, 3, 2, 1]

[1, 2, 3] + [a, b, c] ger dig en ny lista [1, 2, 3, a, b , c]

Minusoperatören är inte definierad.

set (ls) ger dig inställd version av en lista ls, (tar bort dubbletter)

Minusoperatören definieras för uppsättningar som uppsättningsdifferensen

om

A = set([1, 2, 4])

B = set([1, 2, 3])

A – B ger {4}

B – A ger {3}

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *