为什么下面的减号被认为是无效令牌?这里一定有我不懂的东西。

>>> [1e-i for i in range(-10,10)]
SyntaxError: invalid token


通常,这些东西的评估就像母亲一样:

>>> 1e-10
1e-10


我只是好奇;我解决了我的问题

>>> [10**i for i in range(-10,10)]
[1e-10, 1e-09, 1e-08, 1e-07, 1e-06, 1e-05, 0.0001, 0.001, 0.01, 0.1, 1, 10, 100, 1000, 10000, 100000, 1000000, 10000000, 100000000, 1000000000]

最佳答案

1e-01等是数字文字。在脚本运行之前,会看到它们并对其进行标记。这样的数字规则几乎肯定会说“可选的('E'或'e',后跟可选的'+'或'-',后跟数字)”。该定义中没有变量的规定,更改定义会使它无法解析数字文字,直到运行时为止,这将变得非常冗长。

关于python - 为什么“1e-i”在列表推导中不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13966603/

10-10 23:37