首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python3.6内置函数——float

英文文档

lassfloat([x])

Return a floating point number constructed from a number or stringx.

float()

1、函数功能将一个数值或者字符转换成浮点型数值。

>>> float(1)1.0>>> float('1')1.0

2、不提供参数的时候,返回0.0。

>>> float()0.0

3、字符串必须能正确转换成浮点型数值的,否则报错。

>>> float('3.14.15926')Traceback (most recent call last): File "

", line 1, in float('3.14.15926')ValueError: could not convert string to float: '3.14.15926'

4、字符串中允许出现“+”、“-”两个符号,两个符号和数字之间不能出现空格,但是符号前面和数字后面允许出现空格。

>>> float('+3.14') #带正号3.14>>> float('-3.14') #带负号-3.14>>> float(' -3.14 ') #正负号前、数字后可以有空格-3.14>>> float('- 3.14') #正负号与数字间不可以有空格Traceback (most recent call last): File "

", line 1, in float('- 3.14') #正负号与数字间不可以有空格ValueError: could not convert string to float: '- 3.14'

5、有几个特殊的字符串能正确转换,”Infinity”或者“inf”(不区分大小写),能正确转换,表示无穷大,可以和“+”、“-”一起使用;“nan”也能正确转换,表示没有值。

>>> float('Infinity')inf>>> float('inf')inf>>> float('inFinIty') #不区分大小写inf>>> float('+inFinIty') #正无穷inf>>> float('-inFinIty') #负无穷-inf>>> float('nan') #没有值nan

6、定义的对象如果要被float函数正确转换成浮点数,需要定义__float__函数。

>>> class X: def __init__(self,score): self.score = score >>> x = X(9.9)>>> float(x) #不能转换Traceback (most recent call last): File "

", line 1, in float(x) #不能转换TypeError: float() argument must be a string or a number, not 'X'>>> class X: #重新定义类,加入__float__方法 def __init__(self,score): self.score = score def __float__(self): return self.score>>> x = X(9.9)>>> float(x) #可以转换9.9

小结

希望通过上面的操作能帮助大家。如果你有什么好的意见,建议,或者有不同的看法,我都希望你留言和我们进行交流、讨论。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180506A10XDS00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券