파이썬에서 하나의 목록 빼기 다른 목록을 평가하는 방법


최상의 답변

나는 두 목록의 산술 마이너스를 의미한다고 생각합니다 (구성 요소 별 빼기). / p>

이 질문을하는 자신을 발견하면 numpy 모듈을 정기적으로 사용할 때가되었음을 나타내는 표지판입니다.

Numpy는 너무 일반적으로 사용되어 언어의 사실상 표준 부분입니다. Numpy는 기본 산술에 pythonic 우아함 을 제공합니다 (미친 수학 기능 라이브러리 중에서).

왜냐하면-목록 B를 빼기 위해 목록 A, C = A-B라고 쓰고 싶지 않습니까?

물론 그렇습니다. 따라서 numpy를 가져오고 다음과 같이 전환합니다.

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

그게 다입니다. * 등과 같은 다른 작업에서 작동합니다. 이제 목록이 이상한 np.array 컨테이너에 있다는 사실에 놀라지 않아도됩니다. 이러한 배열은 []을 사용하여 동일한 인덱싱을 허용하고 목록과 마찬가지로 [:]를 사용하여 분할 할 수 있습니다.

그리고 언제든지 얻을 수 있습니다. c.list ()라고 말하여 목록을 되돌립니다.

경험이 많은 파이썬 프로그래머는 산술을 많이 할 때 숫자를 저장하기 위해 목록보다는 numpy 배열을 사용하는 경향이 있습니다.

축하합니다. 레벨 업!

답변

Python에서 한 목록에서 다른 목록을 뺀 값을 어떻게 평가하나요?

보통 더하기는 \_\_add\_\_ 메소드를 통해 정의됩니다.

[1, 2, 3] + [3, 2, 1]은 새 목록 [1, 2, 3, 3, 2, 1]

[1, 2, 3] + [ a, b, c]는 새 목록을 제공합니다 [1, 2, 3, a, b , c]

마이너스 연산자가 정의되어 있지 않습니다.

set (ls)는 목록 ls의 세트 버전을 제공합니다 (중복 제거).

마이너스 연산자는 집합에 대해 집합 차이로 정의됩니다.

if

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

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

A-B는 {4}를 줄 것입니다

B-A는 {3}을 줄 것입니다

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다