python环境中,敏感数据的存储与读取问题解决方案

devtools/2024/11/16 2:40:40/

提出原因:因为下面所说的这个模块,我运行时不出任何作用。所以。

有一些类似于 `python-dotenv` 的模块,可以用来管理环境变量。以下是一些常用的替代模块及其代码示例:

### 1. `os.environ`
Python 标准库中的 `os.environ` 可以直接访问环境变量,但你需要手动设置这些环境变量。

#### 示例代码
```Python
import os

# 设置环境变量(仅在当前进程中有效)
os.environ['USERNAME'] = 'your_username'

# 获取环境变量
username = os.getenv('USERNAME')
print(username)
```


### 2. `configparser`
`configparser` 模块可以读取配置文件,类似于 `.ini` 文件格式。

#### 示例代码
首先,创建一个 `config.ini` 文件:
```ini
[DEFAULT]
USERNAME = your_username
```


然后,使用 `configparser` 读取配置文件:
```Python
import configparser

# 创建 ConfigParser 对象
config = configparser.ConfigParser()

# 读取配置文件
config.read('config.ini')

# 获取配置项
username = config.get('DEFAULT', 'USERNAME')
print(username)
```


### 3. `toml`
`toml` 模块可以读取 TOML 格式的配置文件。

#### 安装 `toml` 模块
```sh
pip install toml
```


#### 示例代码
首先,创建一个 `config.toml` 文件:
```toml
[default]
username = "your_username"
```


然后,使用 `toml` 读取配置文件:
```Python
import toml

# 读取 TOML 文件
with open('config.toml', 'r') as file:
    config = toml.load(file)

# 获取配置项
username = config['default']['username']
print(username)
```


### 4. `yaml`
`PyYAML` 模块可以读取 YAML 格式的配置文件。

#### 安装 `PyYAML` 模块
```sh
pip install pyyaml
```


#### 示例代码
首先,创建一个 `config.yaml` 文件:
```yaml
default:
  username: your_username
```


然后,使用 `PyYAML` 读取配置文件:
```Python
import yaml

# 读取 YAML 文件
with open('config.yaml', 'r') as file:
    config = yaml.safe_load(file)

# 获取配置项
username = config['default']['username']
print(username)
```


### 5. `json`
`json` 模块可以读取 JSON 格式的配置文件。

#### 示例代码
首先,创建一个 `config.json` 文件:
```json
{
  "default": {
    "username": "your_username"
  }
}
```


然后,使用 `json` 读取配置文件:
```Python
import json

# 读取 JSON 文件
with open('config.json', 'r') as file:
    config = json.load(file)

# 获取配置项
username = config['default']['username']
print(username)
```


### 总结
以上是一些常用的替代模块及其代码示例,你可以根据自己的需求选择合适的模块来管理环境变量或配置文件。每种方法都有其适用场景,选择最适合你项目需求的方法即可。


http://www.ppmy.cn/devtools/134322.html

相关文章

【赵渝强老师】MySQL InnoDB的数据文件与重做日志文件

MySQL与Oracle一样都是通过逻辑存储结构来管理物理存储结构,即管理硬盘上存储的各种文件。下面将详细介绍InnoDB存储引擎中的数据文件和重做日志文件。 一、数据文件 “.ibd”文件和ibdata文件 这两种文件都是存放Innodb数据的文件,之所以有两种文件来…

C++11新特性(二)

目录 一、C11的{} 1.初始化列表 2.initializer_list 二、可变参数模版 1.语法与原理 2.包扩展 3.empalce接口 三、新的类功能 四、lambda 1.语法 2.捕捉列表 3.原理 五、句装器 1.function 2.bind 一、C11的{} 1.初始化列表 C11以后想统⼀初始化⽅式&#xff0…

node.js学习笔记-快速搭建一个 Express 项目的基本骨架(一)

一、前言 express-generator是 Express 框架提供的一个应用程序生成器工具,它可以帮助你快速搭建一个 Express 项目的基本骨架,节省大量手动创建文件和配置的时间。 以下是关于它的详细介绍和使用步骤: 二、安装 首先,确保你已经…

万字长文解读机器学习——感知机、MLP、SVM

🌺历史文章列表🌺 机器学习——损失函数、代价函数、KL散度机器学习——特征工程、正则化、强化学习机器学习——常见算法汇总机器学习——感知机、MLP、SVM机器学习——KNN机器学习——贝叶斯机器学习——决策树机器学习——随机森林、Bagging、Boostin…

11.11 机器学习-数据集的获取和划分

# sklearn玩具数据集 # 鸢尾花 数据集使用 from sklearn.datasets import load_iris,load_wine,fetch_20newsgroups # 导入 数据集 load本地 feath联网 from sklearn.model_selection import train_test_split # 数据集划分方法 from sklearn.feature_extraction import Di…

公开一下我的「个人学习视频」!

哈喽,大家好,我是六哥。 鉴于上次分享,很多同学说,六哥能整一些百度网盘的资源吗? 可以,来安排,看看有你心动的吗? 性能测试系列 测开系列 python方向 Java方向 主管必会系列 质…

MySQL中,使用XtraBackup进行备份锁

在MySQL中,使用XtraBackup进行备份时,备份锁的获取方式在MySQL 5.7和8.0之间有所不同。XtraBackup是一个开源的热备份工具,它支持Percona Server和MariaDB,以及Oracle的MySQL。 MySQL 5.7 在MySQL 5.7中,XtraBackup通…

杰控通过 OPCproxy 获取数据发送到服务器

把数据从 杰控 取出来发到服务器 前提你在杰控中已经有变量了(wincc 也适用) 打开你的opcproxy 软件包 opcvarFile 添加变量 写文件就写到 了 opcproxy.ini中 这个文件里就是会读取到的数据 然后 opcproxy.exe发送到桌面快捷方式再考回来 &#…