음수를 양수로 변환하는 방법?


99

파이썬에서 음수를 양수로 어떻게 변환 할 수 있습니까? (그리고 긍정적 인 것을 유지하십시오.)


원래 질문 (또는 편집 이 승인 되면 원래 문구로 돌아 가기)을 읽으면 괄호로 묶인 문장이 의미하는 바가 명확하지 않습니다. 원본의 사본을 보관하고 싶다는 뜻입니까, 아니면 양수 값을 수정하지 않고 그대로두고 싶다는 뜻입니까?
jpmc26

답변:


206
>>> n = -42
>>> -n       # if you know n is negative
42
>>> abs(n)   # for any n
42

문서 를 확인하는 것을 잊지 마십시오 .


7
도 있습니다 max(n, -n)(또 다른 대안 :이
tzot

8
max깔끔한 트릭이지만, 특히 파이썬에서는 오버 헤드가 있습니다 abs.. 당신은 확실히 좋아한다 그래서 abs이상max
user1767754

57

단순히 -1을 곱하면 두 가지 방식으로 작동합니다 ...

>>> -10 * -1
10
>>> 10 * -1
-10

1
이것은 내가 생각하는 가장 간단한 해결책이 될 것입니다. 이 솔루션은 음수를 양수로, 양수를 음수로 변환합니다.
Naveen Raju

고전 수학.
Macintosh Fan

21

경우 "긍정적 유지" 긍정적 인 사용에 부정적인 번호를 당신이 체류 긍정적으로 양수를 원하는 수단을뿐만 아니라 변환 abs():

>>> abs(-1)
1
>>> abs(1)
1

8

내장 함수 abs ()가 트릭을 수행합니다.

positivenum = abs(negativenum)

4
In [6]: x = -2
In [7]: x
Out[7]: -2

In [8]: abs(x)
Out[8]: 2

실제로 모든 숫자를 abs반환합니다 absolute value. 절대 값은 항상 음수가 아닙니다.


2
abs (0)은 양수를 반환합니까? :)

2

numpy로 작업하는 경우 사용할 수 있습니다.

import numpy as np
np.abs(-1.23)
>> 1.23

절대 값을 제공합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.