# General Translation Python SDKs: decode_options
URL: https://generaltranslation.com/zh/docs/python/reference/functions/decode-options.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: 在 General Translation Python 中，从已编码的 msg 结果中提取选项字典。decode_options 的 API 参考。

从 [`msg`](/docs/python/reference/functions/msg) 生成的字符串中提取选项字典。它会解码最后一个冒号后的 base64 payload。

## 概览 [#overview]

将编码后的 `msg` 结果传给 `decode_options`。它会返回解码后的 选项字典；如果输入中不含冒号，或其 payload 无效，则返回 `None`。

```python
from gt_i18n import decode_options

decode_options(encoded_message)
```

签名：

```python
decode_options(encoded_msg: str) -> dict[str, object] | None
```

从 `gt_i18n` 导入 `decode_options`。框架包不会重新导出它。

## 工作方式 [#how-it-works]

* **按最后一个冒号拆分。** 它会提取最后一个冒号后的文本，对其进行 base64 解码，然后解析 JSON payload。
* **无效或纯文本输入。** 如果不存在冒号，或者 payload 无法通过 base64 解码或无法解析为 JSON，则返回 `None`。
* **payload 内容。** 解码后的 payload 包含用户变量，以及 `__source` 和 `__hash` 等保留键。

## 参数 [#parameters]

| 参数                            | 描述                                                     | 类型    | 可选 | 默认值 |
| ----------------------------- | ------------------------------------------------------ | ----- | -- | --- |
| [`encoded_msg`](#encoded-msg) | 编码后的 [`msg`](/docs/python/reference/functions/msg) 结果。 | `str` | 否  | —   |

### `encoded_msg` [#encoded-msg]

**Type** `str` · **必填**

编码后的 `msg` 结果，用于从中读取选项。

## 返回值 [#returns]

**类型** `dict[str, object] | None`

解码后的选项字典；如果输入中没有有效的选项 payload，则为 `None`。

## 示例 [#example]

```python
from gt_i18n import msg, decode_options

encoded = msg("Save", _context="button")
decode_options(encoded)   # {"_context": "button", "__source": "Save", "__hash": "..."}
decode_options("Plain")   # None
```

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
