一篇文章教会你什么是Python模仿强类型

共 1697字,需浏览 4分钟

 ·

2020-09-04 12:00

    点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

此曲只应天上有,人间难得几回闻。

前言

    Hi,各位小伙伴,你们好,今天我们来说一个Python未来趋势的并且一个好玩的东西。

    我们可能多多少少都听过一句话,动态一时爽,重构火葬场。从生产角度出发,Python确实是一门很优秀的语言,但是当多人协作时,或者接手别人Python代码时,估计是有些头疼的。

    Python虽然生产力高,语法强大,具备动态语言的灵活性,但是也正是因为这样,估计每个人写的代码有很大差别,那有没有什么办法尽可能的避免这种情况呢?

    关于这个,Python前辈也发现这个弊病,所以,在Python3.6之后,推出了"Python类型注释"。

    来吧,各位,上车吧,我们一起看一下。

环境

Python解释器 3.6+

    关于Python版本,尽可能的选择Python3.6+,因为在Python3.6+之后,在Python的异步彻底崛起,虽然目前处于测试阶段,但是我相信,用不了多久,Python一定会更加优秀。


一个简单的例子

def speak(name,age):   print(name,age)
speak("张三""18")

    我们可以很清晰的知道,speak函数的name参数,接收的一定是个字符串,并且以后我也希望它接收的一直是字符串,传统的写法如上,当然,现在我也是这么写,毕竟我太赖了。

    但是现在有个很简单的需求,我想把name接收的参数都转成大写,so,我们都知道字符串有upper方法。

print("stark".upper())

    但是当我们敲“.”符号的时候,有时候可能并不会出现自动提示,但是name确实是字符串。

    注:Pycharm可能会提示出来,但是有时候会失败,这要归功于Pycharm强大的提示功能,但并不是万能的,如下图所示。

    这很正常,因为Python是动态语言,变量什么类型只有解释到才知道。

    我们将代码稍微改一下,如下图所示。

    我们在参数后面加上:str,就表示我希望我接收的参数类型是字符串,如果我传的是数字类型,如下图所示。

    Pycharm or Vscode出现飘黄警告,如下图所示。

    期望的类型'str',得到却是'int'。

    并且在敲入点号的时候,只要是主流的编辑器,都会自动提示,如下图所示。

声明简单类型

常用几种

不管是函数参数还是声明变量,都是:类型


更多类型

Lists

Dicts



+和不+类型注释的效果

下图是+类型注释的效果:


下图是不+类型注释的效果:

函数

感言

    以上只是简单的写了一下入门常用的一些类型注释,个人认为基本够用。

    小编相信,有人一定会说,这样写和静态语言有什么区别或者说这样写毕竟累,并且复杂,但是有些付出是必须的,毕竟开发软件不是一个人在开发,并且新库和新项目已经陆陆续续在使用以上方法,相信普及是个时间问题。

    类型注释不仅方便自己观看以前的代码,也方便别人阅读自己的代码,小编认为很有必要学习一下。

    想学习更多关于Python的知识,可以参考学习网址:http://pdcfighting.com/

------------------- End -------------------

往期精彩文章推荐:

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

/今日留言主题/

随便说一两句吧~~

浏览 32
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报