首页 > 解决方案 > 如何结束模块定义?

问题描述

我在函数上做的一个常见模式是,在回答问题之前提示,添加“ else”会破坏减少嵌套的目的:

def fun(param):
    if param is None:
        return

    return do_something_with_param(param)

这允许我通过退出返回的函数来减少嵌套None......现在在模块定义中如何return在模块中“”更早?

这是一个基于我想要完成的松散示例:

设置.py:

import os

from dotenv import load_dotenv

PROJECT_NAME = "Default Project Name"

ENV = os.getenv("ENV")

HOST = os.getenv("HOST")
PORT = os.getenv("PORT")

DATABASE_URL = os.getenv("DATABASE_URL")

if not DATABASE_URL:
    raise Exception("Figure out how to exit from the module earlier...")

DATABASE_URL += "?sslmode=disable"

如您所见,如果DATABASE_URL未提供(或任何环境变量),我想退出模块并且不运行其余代码,没有else条件。

模块本身应该能够被导入,如果DATABASE_URL找不到,则没有最后的代码。

标签: python

解决方案


推荐阅读