玩蛇网提供最新Python编程技术信息以及Python资源下载!

Python语言算是强类型语言吗

以为作为脚本语言就是弱类型的……求其中道理!

还有,类型检查的强弱区别(利弊)在哪里?

python代码:

>>> 3+6
9

>>> "3"+6
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: Can't convert 'int' object to str implicitly

>>> "3"+"6"
'36'

>>> "6"-"3"
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for -: 'str' and 'str'

javascript代码:

3+6
9

"3"+6
"36"

"3"+"6"
"36"

"6"-"3"
3

http://en.wikipedia.org/wiki/Strong_and_weak_typing

这个回答比较靠谱:

弱类型、强类型、动态类型、静态类型语言的区别是什么?

强弱是对类型而言的。
强类型,你有一个值之后这个值是什么类型是确定,比如n='1',n的类型是确定的(字符串),因此你不能在Python做n='3' m=n+1运算。而弱类型就不是这样的,值的类型可以在需要的时候再去确定,比如PHP里面你可以$n='3'; $m=$n+1,运算的时候'3'就可以当作整型来进行计算。

弱类型使用会灵活些,但有时候也会因为这种灵活而带来一些歧义,相比而已,强类型就更严谨了。

我的个人理解是这样的,不知道对不对。

玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/wenda/wd19239.html

相关文章 Recommend

玩蛇网Python互助QQ群,欢迎加入-->: 106381465 玩蛇网Python新手群
修订日期:2017年06月01日 - 15时20分19秒 发布自玩蛇网

您现在的位置: 玩蛇网首页 > Python问题解答 > 正文内容
我要分享到:

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules