abs函数和加减号的合并对冲

2019年9月4日 / 524次阅读 / Last Modified 2019年9月4日
内置函数

abs函数恐怕是Python内置的最简单的函数了,功能就是返回整数或者浮点数的绝对值。官方解释说这个函数可以支持复数。

>>> abs(-1)
1
>>> abs(+1)
1
>>> abs(-1.12345)
1.12345
>>> abs(+1.12345)
1.12345

注意,正数前面可以加+这个符号。abs函数只能输入int或float。

再看一下加减号的合并对冲,这个名字是我取的。

>>> 1 --- 1
0
>>> 1 +-- 1
2
>>> 1 +-+ 1
0
>>> 1 -+- 1
2
>>> ---1
-1
>>> ----1
1

多个加号可以合并成一个加号,两个减号就对冲掉没有了。

没想清楚这个特性的作用在哪里?也许可以用在eval函数中,对一个字符串所代表的数字进行数字转换,而此字符串前面的符号来源复杂,Python的这个特性就将这个问题简化了。

>>> eval('--++--+1')
1
>>> eval('--++--+-1')
-1
>>> abs(eval('--++--+-1'))
1

abs函数不能接受字符串,就用eval先处理一下。

-- EOF --

本文链接:https://www.pynote.net/archives/1050

留言区

您的电子邮箱地址不会被公开。 必填项已用*标注


前一篇:
后一篇:

More

麦新杰的Python笔记

Ctrl+D 收藏本页


©Copyright 麦新杰 Since 2019 Python笔记

go to top