如何将负数转换为正数?


99

如何在Python中将负数转换为正数?(并保持积极的态度。)


阅读原始问题(如果编辑获得批准,则返回原始短语),不清楚带括号的句子是什么意思。您是说要保留原件的副本,还是要保留正值不变?
jpmc26 2015年

Answers:


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

不要忘记检查文档


7
还有max(n, -n)(只是另一种选择:)
tzot 2010年

8
max是一个巧妙的技巧,但是,特别是在python中,它有一个开销,它会比慢30%abs。所以,你一定要喜欢absmax
user1767754


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

它将提供绝对值。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.