基础比较薄弱,今天看了下不是特别清楚到底是强类型还是弱类型,还有静动态,wiki 看了下还是比较模糊,
1
tutuk5 2020-04-29 09:10:26 +08:00
动态的,变量不用定义类型
|
2
fgwmlhdkkkw 2020-04-29 09:13:04 +08:00 1
可以在运行时创建新的类型( Python 当然可以),就是动态语言吧……我这么理解。
“静动态”是什么?支持持反射的吗? |
3
yuanse OP @fgwmlhdkkkw 静态和动态
|
4
Orenoid 2020-04-29 09:19:03 +08:00 1
动态类型是肯定的。姑且算是强类型吧,但争议比较大。
|
5
superrichman 2020-04-29 09:19:25 +08:00 via iPhone
python 是动态强类型语言
|
6
ClericPy 2020-04-29 09:20:49 +08:00
随手一搜到处都是
为什么说 Python 是强类型语言? - 知乎 - https://www.zhihu.com/question/43498005 |
7
yuanse OP @tutuk5 那么强弱类型呢,有些写的 “强类型语言:不允许改变变量的数据类型,除非进行强制类型转换。” python 是弱类型的语言么,查资料看着看着就蒙了
|
8
klesh 2020-04-29 09:22:19 +08:00 via Android
强类型
|
11
superrichman 2020-04-29 09:27:17 +08:00
|
12
Norie 2020-04-29 09:30:33 +08:00 via iPhone
胶水型
|
14
tairan2006 2020-04-29 09:35:23 +08:00
强类型动态语言
弱类型语言,一般人应该只接触过 js 和 bash |
15
hanyceZ 2020-04-29 09:38:37 +08:00
PYTHON 是一门动态解释性的强类型定义语言:编写时无需定义变量类型;运行时变量类型强制固定;无需编译,在解释器环境直接运行。
|
16
thfurior 2020-04-29 09:42:17 +08:00
强类型 动态
|
17
yuanse OP 感谢大家的指正
|
18
fank99 2020-04-29 09:57:33 +08:00
动态强类型,js 那种就动态弱类型
|
19
blodside 2020-04-29 10:24:27 +08:00
从类型上看:强类型,没法 cast,不像 c/c++这些弱类型语言可以随便 cast 。但是是动态的,运行时才能确定类型。
现在也不全是隐式类型了,可以和 ts 一样标类型了。 |
20
wtsamuel 2020-04-29 12:31:26 +08:00
胶水
|
21
pisc 2020-04-29 13:55:57 +08:00 via Android
1. 动态类型和静态类型很好区分,主要是看类型检查的时间是否在运行之前进行。
2. 然后根据语言的 specification 来判断是否是动态类型,比如 Python 通常允许不进行类型检查就执行,那么通常说它就是动态类型语言。另外如果你总是使用 mypy 在 Python 做类型检查,那么你说你用的 Python 是静态类型也没问题。 3. 不用使用强、弱类型这个概念,因为就连学术上也没个标准的说法,这不怪谁,PL 在术语标准化方面做的不是很好。 4. 楼上说 Python 是强类型 /弱类型什么的,几乎都是道听途说,不要信。 |