【Python】类型注解 ③ ( 使用 # type: 类型 注释方式设置类型注解 | 类型注解是提示性而非强制性 )

文章目录

  • 一、使用 注释语法 设置 类型注解
    • 1、使用 注释语法 设置 类型注解语法介绍
    • 2、为 基础类型变量 设置 " 类型注解 "
    • 3、为 类 的 对象类型 设置 " 类型注解 "
    • 4、为 基础容器类型变量 设置 简易 " 类型注解 "
    • 5、为 基础容器类型变量 设置 详细 " 类型注解 "
    • 6、完整代码示例
  • 二、类型注解没有强制性





一、使用 注释语法 设置 类型注解




1、使用 注释语法 设置 类型注解语法介绍


除了使用 变量: 类型 的语法格式 设置 类型注解 之外 ,

还可以 使用 注释语法 为 Python 变量 设置 类型注解 , 语法如下 :

# type: 类型名称

类型注解 不是 强制性的 , 只是提示性的 ;

不按照 类型注解进行 赋值 , 代码也不会报错 ;


2、为 基础类型变量 设置 " 类型注解 "


为 基础类型变量 设置 " 类型注解 " :

# 1. 为 基础类型变量 设置 " 类型注解 "
var_int = 10                                # type: int
var_float = 3.14                            # type: float
var_bool = True                             # type: bool
var_str = "Tom"                             # type: str

3、为 类 的 对象类型 设置 " 类型注解 "


为 类 的 对象类型变量 设置 " 类型注解 " :

# 2. 为 类 的 对象类型变量 设置 " 类型注解 "
class Student:
    pass


s = Student()                               # type: Student

4、为 基础容器类型变量 设置 简易 " 类型注解 "


为 基础容器类型变量 设置 简易 " 类型注解 " :

# 3. 为 基础容器类型变量 设置 简易 " 类型注解 "
var_list = [1, 2, 3]                        # type: list
var_tuple = (1, 2, 3)                       # type: tuple
var_set = {1, 2, 3}                         # type: set
var_dict = {"Tom": 18, "Jerry": 12, }       # type: dict
var_str = "China"                           # type: str

5、为 基础容器类型变量 设置 详细 " 类型注解 "


为 基础容器类型变量 设置 详细 " 类型注解 " :

# 4. 为 基础容器类型变量 设置 详细 " 类型注解 "
var_list_2 = [1, 2, 3]                      # type: list[int]
var_tuple_2 = (1, True)                     # type: tuple[int, bool]
var_set_2 = {1, 2, 3}                       # type: set[int]
var_dict_2 = {"Tom": 18, "Jerry": 12, }     # type: dict[str, int]

列表 数据容器类型 的 详细 类型注解 , 只需要设置一个元素类型即可 ;

  • list[int] 列表类型 , 列表的元素类型为 int 类型 ;

元组 数据容器类型 的 详细 类型注解 , 需要为每个元素都进行类型标记 , 有几个元素就要标记几个类型 ;

  • tuple[int, bool] 元组类型 , 第一个元素类型是 int 数字类型 , 第二个元素类型是 bool 布尔类型 ;

字典 数据容器类型 的 详细 类型注解 , 需要设置两个类型 , 第一个类型是 键值对 中的 键 Key 的类型 , 第二个类型是 键值对 中的 值 Value 的类型 ;

  • dict[str, int] 字段类型 , 键 Key 的类型是 str 字符串类型 , 值 Value 的类型为 int 数字类型 ;

6、完整代码示例


类型注解 完整代码示例 :

"""
类型注解 代码示例
"""

# 1. 为 基础类型变量 设置 " 类型注解 "
var_int = 10                                # type: int
var_float = 3.14                            # type: float
var_bool = True                             # type: bool
var_str = "Tom"                             # type: str


# 2. 为 类 的 对象类型变量 设置 " 类型注解 "
class Student:
    pass


s = Student()                               # type: Student

# 3. 为 基础容器类型变量 设置 简易 " 类型注解 "
var_list = [1, 2, 3]                        # type: list
var_tuple = (1, 2, 3)                       # type: tuple
var_set = {1, 2, 3}                         # type: set
var_dict = {"Tom": 18, "Jerry": 12, }       # type: dict
var_str = "China"                           # type: str

# 4. 为 基础容器类型变量 设置 详细 " 类型注解 "
var_list_2 = [1, 2, 3]                      # type: list[int]
var_tuple_2 = (1, True)                     # type: tuple[int, bool]
var_set_2 = {1, 2, 3}                       # type: set[int]
var_dict_2 = {"Tom": 18, "Jerry": 12, }     # type: dict[str, int]

执行结果 :

D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py

Process finished with exit code 0

【Python】类型注解 ③ ( 使用 # type: 类型 注释方式设置类型注解 | 类型注解是提示性而非强制性 )_第1张图片





二、类型注解没有强制性



类型注解 不是 强制性的 , 只是提示性的 ;

不按照 类型注解进行 赋值 , 代码也不会报错 ;


下面的代码中 , 通过两种方式 为 变量设置了 int 类型的 类型注解 , 但是为其设置了 字符串类型的变量值 , 最终执行也没有报错 ;


代码示例 :

"""
类型注解 代码示例
"""

# 使用 变量: 类型 设置类型注解
var_jerry: int = "Jerry"
print(var_jerry)

# 使用 type: 类型 注释设置类型注解
var_tom = "Tom"                                # type: int
print(var_tom)

执行结果 :

D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py
Jerry
Tom

Process finished with exit code 0

警告情况 : 没有报错 , 但是报了一条警告信息 ;

Expected type 'int', got 'str' instead

【Python】类型注解 ③ ( 使用 # type: 类型 注释方式设置类型注解 | 类型注解是提示性而非强制性 )_第2张图片

你可能感兴趣的:(Python,python,类型注解)