You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何访问Django的settings.py中嵌套结构常量的字段值

如何访问settings.py中嵌套结构的常量字段

嘿,这其实很简单,咱们一步步拆解这个嵌套结构就行!

首先,你的PAYMENT_VARIANTS是一个字典,其中'redsys'对应的是一个元组,元组的第二个元素(索引为1,因为Python索引从0开始)才是包含currency等字段的配置字典。

具体访问方式

你已经导入了settings,直接按层级取值就可以了,这里给你两种写法:

写法1:分步拆解(更清晰,适合需要多次使用配置的场景)

from django.conf import settings

# 先拿到redsys对应的元组,再取元组里的配置字典
redsys_settings = settings.PAYMENT_VARIANTS['redsys'][1]

# 现在就可以轻松访问各个字段啦
merchant_code = redsys_settings['merchant_code']
terminal = redsys_settings['terminal']
shared_secret = redsys_settings['shared_secret']
currency = redsys_settings['currency']

写法2:链式直接取值(适合只需要单次访问某个字段的场景)

from django.conf import settings

# 直接链式访问到currency字段
currency = settings.PAYMENT_VARIANTS['redsys'][1]['currency']

# 同理,其他字段也可以这么取
shared_secret = settings.PAYMENT_VARIANTS['redsys'][1]['shared_secret']

小提示

如果担心键不存在会报错,可以用字典的get()方法来做容错处理,比如:

# 如果'redsys'或者'currency'不存在,会返回None(或者你指定的默认值)
currency = settings.PAYMENT_VARIANTS.get('redsys', [None, {}])[1].get('currency')

内容的提问来源于stack exchange,提问作者nlostoni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 12:22:38