python弱类型语言
⑴ 弱类型语言的优缺点
强类型语言(java、Java、.net 、python、C++),当你定义一个变量是某个类型,如果不经过代码显式转换(强制转化)过,它就永远都是这个类型,如果把它当做其他类型来用,就会报错
如: int a =5;
弱类型语言(php、js),你想把这个变量当做什么类型来用,就当做什么类型来用,语言的解析器会自动(隐式)转换。
如: var a =5;
String b ="5";
int result = a+b;
因为 a与b 是java 语言的类型定义,直接写a+b无法编译通过
var b ="5";
var result = a+b;
因为 a与b 是js语言的弱类型定义,直接写a+b结果为10,因为弱类型语言在运行过程中,存在变量类型的隐式转换
因为弱类型语言在运行过程中,存在变量类型的隐式转换,多了一些需要执行的操作,并且,分配内存时,会考虑通用而多分配一些,而强类型则专门为各种类型的变量量身定做地分配内存,内存利用率显然比弱类型会高。
⑵ 强类型语言和弱类型的语言有什么区别
拿C++和php打比,php强语言,c++弱语言.
1)语法有区别,最明显的弱语言不需要设定变量类型,强语言需要;
2)底层上,弱语言是解释执行,强语言是编译执行(java另说,生成中间字节码);
3)性能上差距太大,强语言大大快于php;
4)开发效率,弱语言要快于强语言,所以web开发弱语言很高效;
5)学习曲线不同,弱语言简单好学但是精通的太少了,很多强语言的特性都没有或者牵强的模拟实现;强语言入门门槛高,学不容易,语言特性多,逼着你都学会,另外由于传统软件行业对编程的要求本来就高于web行业导致写传统软件的人的编程素质要远远强于web行业的;
6)最佳的应用场景不同,php只能做web,c++做底层 软件,也可以做web(但是没人这么做)
我用最通俗的话告诉你了区别,但是不仅限于这些.
所以无论做软件还是web,建议强语言(c++ java等)和弱语言(php python perl ruby等)都至少懂一种,另外单独的像js这种基于原型的客户端脚本语言也必须要会!
⑶ python 是什么类型的语言
弱类型,解释型。
也许你会从一些初学者口中,听说Python是强类型。我只想说,这是典型的不懂装懂。Python是绝对的弱类型。强类型的特性,就是IDE可以通过反射,获取变量的数据类型,Python显然不具备这个特点。
int a=“1”;
a=1
强类型(JAVA,C#,C++),这里会报错。。。。
var a="1"; //JS
$a="1" //PHP
a="1" //python
a=1
这里不会报错。。。
⑷ 怎么总有人说python是弱类型语言
首先,python的not xxx,几乎与C的(!xxx) 没什么区别。
int与float的问题,我不是专家,不清楚专业上该怎么表述,直观感觉就是小数据类型转换成大数据类型的操作。
说C是弱类型显然是夸张了,主要问题是void*这种指针可以任意转换,这样类型细节就丢掉了。
⑸ Python是不是弱类型如果是的话是不是仅仅因此就不需要泛型了
Python 是强类型的
Python 不需要泛型是因为 Python 的变量签名是动态的,有 lazy binding 效果。比如一个函数传入 connection 参数,然后函数中调用 connection.close() 。直到你调用这个函数的时候(运行期),虚拟机才会去查找 close 方法,而不是像静态类型语言一样在编译期或装载期就事先建立符号表。
⑹ python 是强类型语言吗
是强类型,是因为他不能隐式类型转换,只能显示类型转换
http://www.hu.com/question/20224705/answer/14394999
⑺ 为什么说 Python 是强类型语言
因为那是不懂装懂的初学者在相互洗脑。。。。Python是彻头彻尾的弱类型。
强类型和弱类型的最核心区别,在于IDE是否可以通过反射,实时感知变量的数据类型,Python显然不具备这个特点。
string a=“1”;
a=1;
强类型(JAVA,C#,C++),这里会报错。。。。
var a="1"; //JS
$a="1"; //PHP
a="1" //python
a=1
弱类型,这里不报错。。。
⑻ python是动态类型的到底算是强类型的还是弱类型的呢
个人理解应该是强类型的动态脚本语言。
理由:
数据类型不会隐式转换,‘1’+1 报typeerror;是为强类型
变量可以重新绑定新的值,可以是不同类型的;是为动态
vartest = 1
vartest = ‘1’
vartest = [1,2,3]
⑼ 有那些语言属于弱类语言啊
楼主你好, 弱类型语言也称为弱类型定义语言。与强类型定义相反。像vb,php,javascript,python,vbscript等就属于弱类型语言.例如:在vbscript中,可以将字符串 12 和整数 3 进行连接得到字符串 123,然后可以把它看成整数 123,而不需要显式转换。
弱类型有时显得很方便,有时却又极易出错。比如:
var result=5+5; //two numbers
alert(result); //outputs "10"
var result=5+'5'; // a number and a string
alert(result); //outputs "55"
因此使用弱类型语言也要格外注意数据类型防止出错。
希望我的回答能帮助到您!
⑽ 怎样才能学好弱类型语言,比如Python
弱类型语言也称为弱类型定义语言。与强类型定义相反。像vb,php,javascript,python,vbscript等就属于弱类型语言.例如:在vbscript中,可以将字符串 12 和整数 3 进行连接得到字符串 123,然后可以把它看成整数 123,而不需要显式转换。
弱类型有时显得很方便,有时却又极易出错。比如:
var result=5+5; //two numbers
alert(result); //outputs "10"
var result=5+'5'; // a number and a string
alert(result); //outputs "55"
因此使用弱类型语言也要格外注意数据类型防止出错。
其实学什么语言的方法都差不多。我觉得有两点最重要:基础和实践。
你需要一本python基础教程,哪一本都行,只要你喜欢。初学者一定要通读,每一章都读。基本的语法、基本的概念一定要熟悉。可以同时开着电脑,照者书中的例题练习。书看完以后可以抽时间翻翻官方的类参考手册。不要死记,了解里面都提供了哪些功能即可。以后真用到了再来那里查。
实践也很重要。不实践,会捡了芝麻丢了西瓜。觉得自己代码写不好,可以看看别人写的代码。挑选质量好、简单一点的。第三方库了解一些常用的。然后自己找个项目做,简单一点的。如果有机会参与公司的项目,最好积极参与,这是学习的好机会。