Sådan vurderes en liste minus en anden i Python


Bedste svar

Jeg antager, at du mener det aritmetiske minus af de to lister (komponentmæssig subtraktion.)

Når du finder dig selv at stille dette spørgsmål, er dette et skilt-indlæg, der indikerer , det er tid til regelmæssigt at bruge numpy-modulet.

Numpy bruges så ofte, at det virkelig er en defacto standard del af sproget. Numpy giver (blandt et vanvittigt bibliotek med matematisk funktionalitet) en pythonisk elegance til grundlæggende aritmetik.

Fordi – at trække en liste B fra liste A, vil du ikke skrive C = A – B?

Selvfølgelig gør du det. Så importer nummen og udfør konverteringer som denne:

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

Og det er det. Det fungerer til andre operationer som * og så videre. Og det er ikke nødvendigt at freak out, at nu er dine lister i en mærkelig np.array-beholder, disse arrays giver mulighed for identisk indeksering ved hjælp af [] og udskæring ved hjælp af [:] som lister gør.

Og du kan altid få en liste tilbage ved at sige c.list ().

Erfarne pythonprogrammerere, når de laver en god mængde aritmetik, har tendens til at bruge følelsesløse arrays snarere end lister til at holde tal.

Tillykke med nivellering op!

Svar

Hvordan vurderer du en liste minus en anden i Python?

Normalt defineres plus ved hjælp af \_\_add\_\_-metoden.

[1, 2, 3] + [3, 2, 1] giver dig en ny liste [1, 2, 3, 3, 2, 1]

[1, 2, 3] + [a, b, c] giver dig en ny liste [1, 2, 3, a, b , c]

Minus-operatoren er ikke defineret.

set (ls) giver dig den indstillede version af en liste ls, (fjernelse af dubletter)

Minus-operatoren er defineret for sæt som den indstillede forskel

hvis

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

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

A – B giver {4}

B – A giver {3}

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *