常规程序启动入口

__name__启动程序

1
2
3
if __name__ = '__main__' :
data : dict = load_toml()
pprint(data,sort_dics=False)

代码逐行解释

if __name__ == '__main__':

  • __name__ 变量:

  • 在 Python 中,每个模块(即.py文件)都有一个内置的__name__变量。这个变量的值取决于模块是如何被使用的。

    • 当一个 Python 脚本作为主程序直接运行时,例如在命令行中使用 python script.py 来执行脚本,该脚本的 __name__ 变量会被自动设置为 '__main__'
    • 当一个 Python 脚本作为模块被其他脚本导入时,例如在 another_script.py 中使用 import script,那么 script.py 模块的 __name__ 变量会被设置为该模块的名称(即 'script')。
  • 条件判断if __name__ == '__main__': 这行代码的作用是检查当前脚本是否作为主程序直接运行。如果是,则执行下面缩进的代码块;如果脚本是作为模块被导入到其他脚本中,则不会执行该代码块。这种机制允许我们在一个脚本中既定义可复用的函数和类,又可以包含用于测试或直接执行的代码,同时避免在被导入时执行这些测试代码。

data: dict = load_toml()

  • 类型注解data: dict 是 Python 的类型注解,它告诉开发者(以及一些静态类型检查工具,如 mypy)变量 data 预期的类型是字典(dict)。类型注解不会影响代码的实际运行,但可以提高代码的可读性和可维护性。
  • 函数调用load_toml() 是之前定义的函数,用于读取并解析 config.toml 文件。调用该函数会返回一个包含解析后 TOML 数据的字典,这个字典会被赋值给变量 data

pprint(data, sort_dicts=False)

  • pprint 函数pprint 是 Python 标准库 pprint 模块中的一个函数,用于以美观的格式打印复杂的数据结构,如嵌套的字典和列表。相比于普通的 print 函数,pprint 会对数据进行格式化,使其更易于阅读。
  • sort_dicts=False 参数:在 Python 3.8 及以上版本中,pprint 函数默认会对字典的键进行排序后再打印。通过设置 sort_dicts=False,我们告诉 pprint 函数不要对字典的键进行排序,**(其实就是对字典的键按照字母顺序排序)**而是按照字典中键的原始顺序进行打印。这样可以保留 TOML 文件中键值对的原始顺序。即没有用字母顺序排序。