赋值运算符的LHS上使用的关键字“ str”

时间:2019-05-17 21:28:16

标签: python string

在我的项目代码中了解语法。

new_addres: str = self.address

vs

new_addres = str(self.address)

new_address是变量,str是python关键字,地址在代码运行时填充。您能帮助我理解为什么我们在第一行的赋值运算符之前使用'str'吗?这两行代码是否相似?

2 个答案:

答案 0 :(得分:2)

这是类型注释,指示变量具有哪种类型。

Python并不真正在乎是否使用注释,并且肯定不会强制使用它:Python不是强类型语言。但是语法支持这些注释,因为它们对于自动生成文档非常方便。

换句话说,

my_variable:type = expression

在语义上等同于

my_variable = expression
就Python而言,

。类型注释只是其他程序需要注意的地方。

编辑:请注意,这是Python 3.6中的一项新功能,因此这些注释在现实世界中仍然不常见。您今天看到的大多数代码库都不使用它们。

答案 1 :(得分:0)

new_addres: str = self.address是类型提示。您可以阅读有关它在python here中的工作方式的信息。它在运行时并没有什么真正的区别,但是在您的IDE中很有用。

new_addres = str(self.address)正在将self.address转换为字符串。