Python培训
400-996-5531
毫无疑问Python是一门动态语言,但是很多人把动态语言和弱类型混为一谈,认为Python是弱类型语言,把Python与JavaScript和PHP归为一类。这种观点是不对的,Python其实是正儿八经的强类型语言,还记得大明湖畔上的TypeError吗?Python是不支持隐式转换类型的。
由于缺少统一的术语,讨论语言类型方面的话题时有时会让人不明其意。因此在讨论类型时,我们应该考虑两个不同的坐标,而不是混为一谈。
静态类型和动态类型
在编译时检验类型的语言是静态类型语言,在运行时检验类型的是动态类型语言。静态类型需要声明类型,当然有些静态语言使用了类型推导避免了部分类型的显式声明。C++和Java是典型的静态语言,Python和JavaScript是典型的动态语言。
静态类型使一些开发工具(如编译器、IDE)便于分析代码、找出错误和提供其它功能(如重构,优化)。动态语言便于代码重用,代码行数更少,而且能让接口自然成为协议而无需提早实现,如Python的鸭子类型。
强类型和弱类型
如果一门语言很少有隐式转换类型,则该语言是强类型语言;反之则是弱类型语言。C++、Java和Python是强类型语言;PHP、JavaScript是弱类型语言。
下面以Python为例展示强类型的特点,整型和字符串做加法运算会报TypeError错误,因为Python不会自动在整型和字符串之间强制转换。
下面以JavaScript为例展示弱类型的特点,整型和字符串可以做加法,JavaScript会自动把整型转为字符串类型,最后得到的结果为字符串。
综上所述,Python是动态强类型语言。
本文内容转载自网络,本着分享与传播的原则,版权归原作者所有,如有侵权请联系我们进行删除!
填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有
Tedu.cn All Rights Reserved