代码之家  ›  专栏  ›  技术社区  ›  Vlad from Moscow

Python 3.6变量注释和数字文字

  •  0
  • Vlad from Moscow  · 技术社区  · 8 年前

    这些示例是否不完整,是否需要一些额外的代码?

    例如,本声明

    primes: List[int] = []
    

    问题

    NameError: name 'List' is not defined
    

    本声明

    print( 1_000_000_000_000_000 ) 
    

    也被认为是错误的。

    1 回复  |  直到 8 年前
        1
  •  2
  •   Dimitris Fasarakis Hilliard    8 年前

    如果您首先导入,则第一种情况有效 List from typing . 大多数与类型提示一起使用的类型都不是内置的,需要先导入它们。

    第二种情况在以下情况下也适用 3.6 . 在我的机器上,它可以正确打印:

    Python 3.6.2 | packaged by conda-forge | (default, Jul 23 2017, 22:59:30) 
    [GCC 4.8.2 20140120 (Red Hat 4.8.2-15)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> print( 1_000_000_000_000_000 ) 
    1000000000000000
    

    SyntaxError: invalid syntax 你上了 3.5 或更少。如果是 SyntaxError: invalid token 你没有正确使用下划线。我猜你收到了第一封信。

    所以,你可能需要仔细检查一下你的跑步记录 ( python -V ).