python中的p = 和p:dict = 有啥区别? [复制]

Posted

技术标签:

【中文标题】python中的p = 和p:dict = 有啥区别? [复制]【英文标题】:What is the difference between p = and p: dict= in python? [duplicate]python中的p = 和p:dict = 有什么区别? [复制] 【发布时间】:2021-03-24 03:19:59 【问题描述】:

我想了解表达式p: dict = 是什么意思。对我来说,它不像p = 那样直观。为什么: dict 部分要添加到表达式中?在我看来,它似乎根本没有添加任何东西。

我看的代码如下

>>> p = 
>>> p['s'] = 2
>>> p
's': 2
>>> p: dict = 
>>> p['a'] = 4
>>> p
'a': 4

【问题讨论】:

是类型注解。更多信息是here 他们不想让它像其他语言一样。 请注意,p: dict = 中的注释毫无意义,因为它没有添加任何信息。像p: dict[str, int] = p: dict[str, int | str] = 那样限制键值类型会更明智。 【参考方案1】:

它用于 Python 类型检查。由于 Python 是一种动态类型语言,这种语法有助于开发人员避免与类型冲突相关的错误。有像 mypy 这样的工具可以统计地检查这些语法。 在您的示例代码中,p 的类型定义为 dict 并初始化为空。

Check here as a reference

【讨论】:

以上是关于python中的p = 和p:dict = 有啥区别? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

LAMP中的“P”有啥意义?为啥是 PHP、Perl 或 Python?

Java 中 给一个object 赋值属性, 既可以用构造函数的方式,也可以用setXXXX()的方式,而它们之间有啥区

python中字典常用的方法都有哪些,分别有啥作用?

C++中,int&&表示啥意思?和int&有啥不同?

python中的type和type.__new__有啥区别?

span标签和p标签有啥区别?啥时候用span