弱类型语言与强类型语言
Posted 52why
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了弱类型语言与强类型语言相关的知识,希望对你有一定的参考价值。
在上一篇中已经介绍了python环境配置与IDE的安装,这里主要介绍一下弱类型语言与强类型语言。
弱类型语言
在了解python的数据类型之前,这里介绍一个概念-弱类型语言。哪什么是弱类型语言?为什么这里要介绍弱类型语言呢?
弱类型语言与强类型语言是站在变量类型处理的角度来进行区分,强类型是指不允许隐式变量类型转换,弱类型则允许隐式类型转换。这么说可能不好理解,简单来说就是:
强类型语言,当你定义了一个变量,在没有经过代码显式的转换(强制转换)类型之前,它永远都是一开始定义好的类型,不能将它当成其他类型的变量来使用。比如C、C++、java,这里我编了一个简单的C++代码来帮助理解。一开始定义了一个int类型的变量a,不经过强制转换类型,将一个小数型的数据2.3赋值给a,再打印出a的类型,这里会输出一个“i”(i代表int,d代表double),从这里可以看出了,a的类型并没有改变,依然是int类型,有C的环境的可以自己运行一下。
?#include <iostream> #include <string> #include <typeinfo> using namespace std; ? int main() { int a=2; a = 2.3; cout <<typeid(a).name()<<" "; return 0; }
弱类型语言,就是你想把这个变量当做什么类型来用,就当做什么类型来用,语言的解析器会自动(隐式)转换,比如python、php、javascript,这也是这里要介绍一下弱类型语言的原因,这里弄一个python的代码来加强理解?。这里和C++代码一样只是简单的将一个小数类型的数据1.2赋值给了一个int类型的变量a,没有做强制转换,但是a已经自动的转成了float类型的变量,这就是?弱类型语言。
a = 1 print(type(a)) #<type ‘int‘> a = 1.2 print(type(a)) #<type ‘float‘>
在熟悉了弱类型语言之后,接下来介绍一下python中数据类型?。?对python学习有兴趣的可以关注一下我的公众号,会一步一步的介绍python基础,之后还会介绍一下python重点、linux和openstack的一些文章。
以上是关于弱类型语言与强类型语言的主要内容,如果未能解决你的问题,请参考以下文章