python 中.不出方法类库中对应的方法提示

forever 测试交流1 142字数 70阅读模式


请假一下大佬们,想知道是我设置有问题吗,我想要的是在在第一张图里面 sheet.后面也能回显跟什么方法,是我 Import 的不正确吗文章源自玩技e族-https://www.playezu.com/190196.html软件测试培训文章源自玩技e族-https://www.playezu.com/190196.html文章源自玩技e族-https://www.playezu.com/190196.html

玩技站长微信
添加好友自动发送入群邀请
weinxin
rainbow-shownow
玩技官方公众号
官方微信公众号
weinxin
PLAYEZU
 
  • 版权提示:本站仅供存储任何法律责任由作者承担▷诈骗举报◁▷新闻不符◁▷我要投稿◁
    风险通知:非原创文章均为网络投稿真实性无法判断,侵权联系2523030730
    免责声明:内容来自用户上传发布或新闻客户端自媒体,切勿!切勿!切勿!添加联系方式以免受骗。
  • 原创转载:https://www.playezu.com/190196.html
    转载说明: 点我前往阅读>>>
    • YoungLeo
      YoungLeo 9

      打印看看第一张图里的 sheet 是什么类型?看看是对象类型还是字符串类型,然后还可以打印一下 dir(sheet) 看看它的属性、方法有哪些这个是语言特性造成的。

      python 不是强类型语言,没有强要求指定每个变量的类型。实际上每个变量的实际数据类型都是可以随时变化的。比如可以随时把一个原来存储对象的变量改为存储 int。

      这种情况下,按你图 1 里的写法, ide 是推断不出来你这个变量是什么类型的东西,自然无法做方法提示。能推断出来的方法,要不是在程序运行时(毕竟里面有具体的值了,instanceOf 一下就知道类型了),或者是熟悉变量实际类型的人。

      python 3.5 开始提供了类型注解支持 来让 ide 可以推断出实际的变量类型。你这种类似字典取值的写法,实际内部调用的是 __getitem__ 这个魔法函数,要做到类型提示的话,可以试试自己想办法重写 wb 这种数据类型里的这个魔法函数,加上类型注解支持。图二能通过.给出提示,是因为你的 wk 变量是直接由库函数返回的,ide 可以精确知道 wk 变量的类型,所以能给出它包含的各种方法。
      图一之所以不能.出来,是因为 sheet 变量是 wb 字典变量的某一个值,ide 不知道你这个 wb[‘login’] 到底是个啥玩意儿,它可能是一个字符串,可能是一个 int,无从猜测,取决于你的实际数据(也就是 wb[‘login’] 是啥只有你自己知道),所以无法提供任何方法名称。

    匿名

    发表评论

    匿名网友
    确定