猿问

在Python中使用变量:class type = 格式声明变量的目的是什么?

总的来说,我对编程很陌生。我想知道为什么这个符号在一些代码中使用。我的意思是,这种声明变量的方式的目的是什么?有用吗?

例如,假设我定义

say_hello1 = "hello everybody"

我还可以使用以下方法定义相同的变量:

say_hello2 : str = "hello everybody"

或者 ..

say_hello3 : float = "hello everybody" # I know this is not a float variable, I'm doing it on purpose

每个变量(say_hello1、say_hello2 和 say_hello3)都是相同的类型(字符串)。那么这种变量声明方式的目的是什么呢?难道只是说变量将是特定类型吗?或者它会改变其他什么(即代码的效率)吗?

提前致谢。


白猪掌柜的
浏览 139回答 4
4回答

慕哥6287543

它显示了您期望的变量,这使您的代码更易于阅读和理解。它还可以帮助使用 linter 和其他第三方工具。据我所知,Python 本身不会看它。

慕码人2483693

Python 不是强类型语言。只是variable : type为了可读性,不声明强类型变量。稍后您可以更改该值,即使是其他类型。

人到中年有点甜

在这种情况下,类型非常明显,因此它不是很有帮助,但假设您有一个BaseClass其他一些类继承的SubClassA基类SubClassB,然后:a: SubClassA = SubClassA()  # not very usefula: BaseClass = SubClassA()  # indicates that you expect a given interface, no necessarily SubClassA### another dev can safely replace code later ona: BaseClassA = SubClassB()

阿波罗的战车

PEP-484中引入了类型提示。目标是允许其他工具根据变量的可接受类型进行静态检查。例如,它包含在 PyCharm 中,并由mypy使用。但无论如何,Python 是一种动态语言,解释器只是忽略那些声明的类型提示。
随时随地看视频慕课网APP

相关分类

Python
我要回答