您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

为什么“ 1.real”是语法错误,但“ 1.real”在Python中有效?

为什么“ 1.real”是语法错误,但“ 1.real”在Python中有效?

我猜想.,如果可能的话,贪婪地将其解析为数字的一部分,使其成为float 1.,而不是方法调用的一部分。

小数点附近不能有空格,但是.方法调用中,您可以在空格前后添加空格。如果数字后跟一个空格,则该数字的解析将终止,因此无歧义。

让我们看一下不同的情况及其解析方式:

>>> 1.real    # parsed as (1.)real  -> missing '.'
>>> 1 .real   # parsed as (1).real  -> okay
>>> 1. real   # parsed as (1.)real  -> missing '.'
>>> 1 . real  # parsed as (1).real  -> okay
>>> 1..real   # parsed as (1.).real -> okay
>>> 1 ..real  # parsed as (1)..real -> one '.' too much
>>> 1.. real  # parsed as (1.).real -> okay
>>> 1 .. real # parsed as (1)..real -> one '.' too much
python 2022/1/1 18:40:15 有252人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶