如何在 python 点环境文件中定义列表?

How to define lists in python dot env file?

在快速 API 文档中,建议使用 .env 加载配置。只是据我所知它只支持字符串。

from fastapi import FastAPI
from pydantic import BaseSettings


class Settings(BaseSettings):
    api_tokens = []

    class Config:
        env_file = ".env"


settings = Settings()
app = FastAPI()

我通常每隔几个月更改一次 API 标记,在列表中添加一个新标记,一段时间后我删除旧标记。这使用户有足够的时间升级到最新版本而不会受到任何干扰。同时,两个 API 令牌将在一段时间内有效。

但我无法在 .env 文件中定义列表。

API_TOKENS = abc123,abc321

我是不是漏掉了什么?

更新:

其实是可以的。 下面的答案是正确的,但是我仍然不得不像这样更改类型:

class Settings(BaseSettings):
    api_tokens: list

这应该有效,

API_TOKENS = ["abc123","abc321"]