V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
joyc
V2EX  ›  Python

[新手求助] Python 中的__annotations__的使用场景及用法

  •  
  •   joyc · 2018-11-16 10:56:07 +08:00 · 2451 次点击
    这是一个创建于 1959 天前的主题,其中的信息可能已经有所发展或是发生改变。

    看到手册的 函数注解( Function Annotations )介绍,如下:
    https://docs.python.org/3.6/tutorial/controlflow.html#function-annotations

    不太懂这个有什么作用及应用场景,不知道他的实际用法。
    但是记得看到过有人的代码里定义函数后面有用到过 '→' 当时还纳闷这是什么。
    求助有经验的大神介绍一下。

    4 条回复    2018-11-16 15:33:12 +08:00
    lifengming
        1
    lifengming  
       2018-11-16 11:05:45 +08:00
    一般是给 ide 用的,还要一种可能用处是,自己写类型检查?(这个可能用法可能太繁琐)
    vishva
        2
    vishva  
       2018-11-16 11:18:16 +08:00
    类似于 java 中的注解,就是提供一些自定义的信息.至于怎么用还是看你自己
    Eds1995
        3
    Eds1995  
       2018-11-16 11:22:15 +08:00
    python3 写函数一般都需要做类型注释,传递参数也需要做类型标注,这样后面代码集成测试时候好测
    joyc
        4
    joyc  
    OP
       2018-11-16 15:33:12 +08:00
    谢谢楼上诸位,目前查到的资料中有用的使用场景也就是给定义的函数做参数的类型检查。

    比如借助 Function Annotations 写一个简单的参数类型检查的装饰器
    参考如下:
    https://mozillazg.com/2016/01/python-function-argument-type-check-base-on-function-annotations.html
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5740 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 01:52 · PVG 09:52 · LAX 18:52 · JFK 21:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.