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

如何从环境变量获取字节格式数据且不转换为字符串

解决环境变量读取字节格式数据的问题

问题本质

环境变量和.env文件存储的都是纯字符串,所以你写入的"b'23od0403kjdj4'"会被完整读取为字符串,直接转字节自然会带上外层的b'和'。下面是几种可靠的解决方法:

方法1:手动提取内容后编码

直接截取字符串中b'和'之间的部分,再编码为字节:

import os
# 从环境变量读取字符串
pwd_str = os.getenv("ENCRYPTED_PWD")
# 提取引号内的核心内容并转字节
pwd = pwd_str[2:-1].encode('utf-8')
print(pwd)  # 输出 b'23od0403kjdj4'

方法2:用ast.literal_eval解析Python字面量

ast.literal_eval可以安全解析合法的Python字面量,直接把字符串形式的字节对象转为真实的字节:

import os
import ast
pwd_str = os.getenv("ENCRYPTED_PWD")
pwd = ast.literal_eval(pwd_str)
print(pwd)  # 输出 b'23od0403kjdj4'

最优方案:修改.env存储方式

最省心的方式是不在.env里写b'xxx'格式,直接存储原始字符串:

# .env文件中直接写
ENCRYPTED_PWD=23od0403kjdj4

读取时直接编码为字节:

import os
pwd = os.getenv("ENCRYPTED_PWD").encode('utf-8')
print(pwd)  # 输出 b'23od0403kjdj4'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 01:22:37