Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 浮动的含义是什么?_Python - Fatal编程技术网

Python 浮动的含义是什么?

Python 浮动的含义是什么?,python,Python,我正在写一个函数计算,比如eval。当我谈到浮动时,我真的不知道为什么会有这样一个无用的函数。因为: >>> float.__pos__(-1.0) -1.0 >>> float.__pos__(1.0) 1.0 而float.\uuuu neg\uuuu则完全不同: >>> float.__neg__(1.0) -1.0 那么,float.\uuuuu pos\uuuuuu的含义是什么?>>帮助(float.\uuuuu pos\uuu

我正在写一个函数计算,比如
eval
。当我谈到浮动时,我真的不知道为什么会有这样一个无用的函数。因为:

>>> float.__pos__(-1.0)
-1.0
>>> float.__pos__(1.0)
1.0
float.\uuuu neg\uuuu
则完全不同:

>>> float.__neg__(1.0)
-1.0
那么,
float.\uuuuu pos\uuuuuu
的含义是什么?

>>帮助(float.\uuuuu pos\uuuu)
>>> help(float.__pos__)
Help on wrapper_descriptor:

__pos__(...)
    x.__pos__() <==> +x
有关wrapper\u描述符的帮助: __位置(…) x、 位置+x
它是“一元加号”运算符,当您使用
x
浮点数执行
+x
操作时调用。正如您所发现的,它基本上对浮动没有任何作用;-)但是,您可以定义一个子类,该子类对它做了一些非常重要的事情。这就是它出现的原因。

>>帮助(浮动)
有关wrapper\u描述符的帮助:
__位置(…)
x、 位置+x

它是“一元加号”运算符,当您使用
x
浮点数执行
+x
操作时调用。正如您所发现的,它基本上对浮动没有任何作用;-)但是,您可以定义一个子类,该子类对它做了一些非常重要的事情。这就是它存在的原因。

方法定义了任何对象的一元+运算符的效果

正如Tim Peters提到的,它对浮动没有影响


有关用于执行某些操作的示例,请参见。

方法定义任何对象的一元+运算符的效果

正如Tim Peters提到的,它对浮动没有影响


请参阅一个用于执行某些操作的示例。

Python有一个一元否定运算符来否定数字,您可能很清楚:

>>> x = 5
>>> print(-x)
-5
>>> x = -5
>>> print(-x)
5
不过,假设你正在列一个数字清单。如果在正数的前面加上
+
,则可能会更加一致,因此Python也有一元
+
运算符:

>>> numbers = [-3, -2, -1, 0, +1, +2, +3]
当您对一个数字使用一元
+
运算符时,它没有任何作用,这是正确的;这只是为了保持一致性


现在,当您在Python中考虑时,可以重写类型上的运算符,当然,您需要一个py-NexGui来否定该类型的实例。Python决定保持一致性,同时使用

\uuuuu pos\uuuu
来…不否定该类型的实例
float
,与覆盖这些运算符的所有其他类型一样,遵循此协议,
float
\uuuuuu pos\uuuuu
的实现只是标识函数。

Python有一个一元否定运算符来否定数字,您可能很清楚:

>>> x = 5
>>> print(-x)
-5
>>> x = -5
>>> print(-x)
5
不过,假设你正在列一个数字清单。如果在正数的前面加上
+
,则可能会更加一致,因此Python也有一元
+
运算符:

>>> numbers = [-3, -2, -1, 0, +1, +2, +3]
当您对一个数字使用一元
+
运算符时,它没有任何作用,这是正确的;这只是为了保持一致性


现在,当您在Python中考虑时,可以重写类型上的运算符,当然,您需要一个py-NexGui来否定该类型的实例。Python决定保持一致性,同时使用

\uuuuu pos\uuuu
来…不否定该类型的实例
float
,就像所有其他类型覆盖这些操作符一样,遵循这个协议,
float
\uuuuuu pos\uuuuuu
的实现就是身份函数。

一个子类用它做了一些不平凡的事情
,比如什么?我的意思是,如果没有手帕会发生什么。我也看到了同样的问题,也知道了原因。@Pythoner,请参阅链接@DavidGinsburg,以获取Python中的数字类型示例,在这些示例中,一元加号做了一些非常重要的事情。如果float(或int)不支持
\uuu pos\uuuuu()
,表达式
+3.0
(或
+3
)将在运行时爆炸,带有
属性错误
查找
\uuu pos\uuuu
:-)
一个子类,该子类用它做了一些不平凡的事情
,比如什么?我的意思是,如果没有手帕会发生什么。我也看到了同样的问题,也知道了原因。@Pythoner,请参阅链接@DavidGinsburg,以获取Python中的数字类型示例,在这些示例中,一元加号做了一些非常重要的事情。如果float(或int)不支持
\uuu pos\uuu()
,则表达式
+3.0
(或
+3
)将在运行时爆炸,并出现
属性错误
查找
\uuu pos\uu
:-)@Doorknob谢谢。现在我知道了关键字
unary
…@doorknoble谢谢。现在我知道了关键字
unitary
。。。