免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3257 | 回复: 6
打印 上一主题 下一主题

动态语言,与强类型,弱类型的关系,一直不是太清楚 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-07-31 08:30 |只看该作者 |倒序浏览
动态语言,与强类型,弱类型的关系,一直不是太清楚
python是动态的,但是,它属于 强类型 还是 弱类型 呢?

论坛徽章:
0
2 [报告]
发表于 2012-07-31 08:51 |只看该作者
回复 1# go_hao
强类型的

   

论坛徽章:
0
3 [报告]
发表于 2012-07-31 08:59 |只看该作者
一门语言,
是动态/静态

是强类型/弱类型

有关系吗?

论坛徽章:
0
4 [报告]
发表于 2012-07-31 16:20 |只看该作者
没关系,我理解动态语言是在运行时候才检查变量类型,比如python不用说明变量的类型,第一次赋值时候就决定了;动态语言有python,javascript。
静态语言是在编译的时候就检查变量类型,比如c、java。
强类型 指的是类型定义好了之后就不能改变,python原来是整数,再不能赋值为浮点数据一样,id不同说明是不同的变量了。javascript据说是可以更改类型的我不是很了解。
比如:
>>> b=1
>>> id(b)
24247656
>>> b=1.2
>>> id(b)
24317440

论坛徽章:
0
5 [报告]
发表于 2012-07-31 16:27 |只看该作者
晕了,变量a, 第2次赋值,难道就是另外一个变量了吗?
第一次赋值的变量哪去了?
  1. >>> a=1
  2. >>> id(a)
  3. 10416440
  4. >>> a=2
  5. >>> id(a)
  6. 10416428
复制代码

论坛徽章:
0
6 [报告]
发表于 2012-07-31 23:11 |只看该作者
1,2这些小整数是python自己维护的整数池里的对象数据,不会释放,也不用新建,为的是减少每次申请耗费资源。
a=1此时a指向1,a=2此时a指向2,id自然不一样

论坛徽章:
0
7 [报告]
发表于 2012-08-01 00:19 |只看该作者
>>> a=1
>>> id(a)
676087688
>>> a=3
>>> id(a)
676087664
>>> a=1
>>> id(a)
676087688
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP