Python语言学习笔记之十一(DotEnv)

本课程对于有其它语言基础的开发人员可以参考和学习,同时也是记录下来,为个人学习使用,文档中有此不当之处,请谅解。

1、认识Python DotEnv

dotenv是Python中的一个工具包,它主要用于谈取项目中的.env文件,并将.env文件中定义的环境变量导人到当前的环

境中供当前程序使用

.env文件是一个配置文件其中包含的kev-value键值对表示程序所需要用到的环境变量这种方式允许敏感信息(如API密、数据码等储在境量中,而不是硬码在代码中使得这些信息更加安全并减少泄露的风险。

Python-dotenv是一个Python库它可以从env文件中读取环境变量,将它们存储在操作系统的环境变量中使Python应用程序可以轻松地访问这些变量env文件是一个纯文本文件其中包含key=value对,每个key=value对占据一行

将敏感信息存储在环境变量中而不是硬编码在代码中是一个好的安全实践,因为这些值不会存储在代码库中也不会在部署时暴露出来。

​​​​​​​2、为什么使用Python-dotEnv

1、保护敏感信息

使用Python-dotenv将敏感信息存储在环境变量中,而不是硬编码在代码中,可以更加安全地保护这些信息在Git等版本控制系统中,·gitignore文件可以忽略.env文件,以避免将敏感信息推送到仓库中这样可以保证代码的安全,并减少泄露的风险,

2、方便易用

Python-dotenv提供了一种简单的方式来管理环境变量,并且可以在不同的部署阶段中使用不同的变量而无需修改代码本身。此外,Python-dotenv还可以与其他工具集成使用,比如docker-compose.这样可以轻松实现本地开发和生产环境之间的切换。

3、支持多种变量格式

Python-dotenv支持多种变量格式,这些格式包括: key=value, key="value",key='value'以及key=value # comment.这些灵活的格式使得Python-dotenv非常容易集成到不同的项目中

​​​​​​​3、如何使用Python-dotEnv

1、安装Pvthon-dotenv你可以使用pip来安装Python-dotenv,运行命令

pip install python-dotenv

2、创建env文件创建一个.env文件,并将环境变量写入该文件中,每个key=value对应一行

3、将env文件中的变量加载到系统环境变量中通过使用load_dotenv函数,将env文件中的所有变量读取到系统环境变量中,可以在程序中方便地使用这些变量.

4、使用Python-dotenv进行配置

除了使用环境变量,Python-dotenv还可以与其他集成使用比如Flask,在Flask应用程序中,使展Python-dotenv来管理应用程序配置非常简单,可以在应用程序根目录中创建一个.env文件,然后在应用程序初始化时使用loaddotenv丽数将变量加载到系统中

​​​​​​​4、总结

Python-dotenv提供了一种简单的方式来管理环境变量,使得Python应用程序可以轻松地访问这些变量。通过使用Python-dotenv,可以更加安全地保护敏感信息,并且方便易用,支持多种变量格式,在不同的部署阶段中使用不同的变量,而无需修改代码本身,是一个很好的实践。总体来说,Python-dotenv是一个非常有用的工具,可以使得Python项目变得更加安全和方便

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/218083.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

语音机器人话术设计重点

要使用语音机器人,首先得要先准备一套业务的话术脚本,这个话术脚本的设计,可能直接决定了语音机器人后续的使用效果。这个脚本的编写一般不是机器人厂家直接能完成的,只有业务的使用方,他们才最了解自己的业务&#xf…

ACT、NAT、NATPT和EASY-IP

目录 一、ACL 1.ACL 2.ACL的两种应用匹配机制 3.ACL的基本类型 4.ACL命令操作 5.ACL实验: 4.ACL的应用原则: 5.匹配原则: 二、NAT 1.NAT的原理及作用: 2.NAT分类 3.NAT配置 三、EASY-ip实验 四、NATPT 五、通配符 …

本地项目添加到gitlab命令操作

gitlab上面创建一个跟项目名同名的文件夹 创建文件夹,填写信息 添加readme文档,先保存下创建的文件夹 回到项目,复制项目的git 地址 然后进入到本地项目的文件夹,如d:/workspace/spring-demo,右键打开git bash弹框 命令…

浅入浅出理解MySQL和InnoDB

目录 数据库的定义 数据库和实例 MySQL 的架构 数据的存储 如何存储表 如何存储记录 数据页结构 索引 索引的数据结构 聚集索引和辅助索引 索引的设计 锁 并发控制机制 锁的种类 锁的粒度 锁的算法 死锁的发生 事务与隔离级别 几种隔离级别 脏读 不可重复读 幻读 总结 Innodb与…

对BIOS进行简单快速的设置更改,就能启用安全引导来安装Windows 11

本文介绍如何在UEFI/BIOS中启用安全引导,以便继续安装Windows 11。 如何启用安全引导 启用安全引导最简单的方法是通过UEFI/BIOS进行。它通常被列为BIOS中的众多选项之一,因此你只需打开它即可启用它。 1、启动,或重新启动你的电脑或笔记本…

【Android】在Android上使用mlKit构建人脸检测程序

在Android上构建人脸检测程序 目录 1、导入mlKit依赖包2、配置人脸检测器并且获取人脸检测器3、加载图片资源4、调用人脸检测器5、绘制矩形边框6、完整代码7、效果展示 1、导入mlKit依赖包 dependencies {// ...// Use this dependency to bundle the model with your appi…

【问题解决】Buildroot文件系统dropbear 上位机scp命令Permission denied, please try again.

前提: 上位机:Ubuntu虚拟机与开发板同局域网开发板:Buildroot文件系统,开启了dropbear,已经联网与虚拟机同局域网 liefyuanubuntu:~/tcp-test/tcp-c-client$ scp tcp_client root192.168.8.199:/opt root192.168.8.1…

构建强大应用的引擎:深度解析Spring Boot Starter机制

目录 引言1. Spring Boot Starter机制1.1 什么是Spring Boot Starter1.2 为什么要使用Spring Boot Starter1.3.应用场景1.4.自动加载核心注解说明 2. 综合案例配置类制作控制功能实现 总结 引言 在当今互联网时代,构建高性能、可维护的应用已成为开发者的首要任务。…

ISCTF(CRYPTO)

easy_rsa nc连接看看 脚本 import gmpy2import libnumfrom Crypto.Util.number import *from binascii import a2b_hex, b2a_hexflag "*****************"p 11920076502966619778438716819444048800827104655497817807132072529253600622832779629686654276924193…

PPT插件-好用的插件-放映笔、绘图板-大珩助手

放映笔 幻灯片放映时,工具在幻灯片的左下方,本工具在幻灯片的右侧,可以移动,可以方便在右侧讲课时候使用 绘图板 可在绘图板上写签名、绘制图画、写字等等,点画笔切换橡皮擦,点插入绘图,将背景…

基于PaddleNLP的深度学习对文本自动添加标点符号(一)

前言 目前以深度学习对文本自动添加标点符号研究很少,已知的开源项目并不多,详细的介绍就更少了,但对文本自动添加标点符号又在古文识别语音识别上有重大应用。 基于此,本文开始讲解基于PaddleNLP的深度学习对文本自动添加标点符号…

IDEA设置查看JDK源码

问题 我们在查看JDK源码时,可能会遇到这种情况,步入底层查看JDK源码时,出现一堆var变量,可读性非常之差,例如笔者最近想看到nio包下的SocketChannelImpl的write方法,结果看到这样一番景象: pu…

Lvs-NAT部署

目录 一.什么是lvs 二.集群的类型 三.lvs的三种模式 四.lvs调度算法 五.LVS-NAT模式部署 一.什么是lvs lvs负载均衡群集:由多台主机构成,对外表现为一个整体,只提供一个访问入口,相当于一个大计算机。 二.集群的类型 1&am…

可视化数据监控大屏网页界面,数据大屏模版PS资料(免费UI源文件)

数据大屏模板在大数据领域被广泛应用,其优势在于能够将复杂的数据通过图形、图表等方式呈现出来,使数据更易于理解。数据大屏模板可以用来进行数据分析。通过对数据的比较、趋势分析、异常检测等,可以发现数据中的规律和问题,为决…

网络协议 - DNS 相关详解

网络协议 - DNS 相关详解 DNS简介域名层级结构域名服务器 DNS 解析流程为什么DNS通常基于UDP DNS 查询dig 查询host查询nslookup查询whois查询在线工具查询 DNS 调度原理地理位置调度不准确规则变更生效时间不确定高可用 DNS 安全相关什么是DNS劫持什么是DNS污染为什么要DNS流量…

TCP/IP详解——UDP 协议

文章目录 1. UDP1.1 UDP 头部1.2 UDP 校验和1.3 UDP 传输过程1.4 UDP-Lite1.5 最大 UDP 数据报长度1.6 UDP 输入队列 1. UDP UDP:用户数据报协议(User Datagram Protocol)面向无连接的,也就是无需建立连接,传输不可靠。…

(十六)Flask之蓝图

蓝图 Flask蓝图(Blueprint)是Flask框架中用于组织和管理路由、视图函数以及静态文件的一种机制。它提供了一种将应用程序拆分为更小、可重用组件的方式,使得项目结构更清晰,代码更易于维护。 使用Flask蓝图,可以将相…

MongoDB mapReduce案例分析

文章目录 第1关:mongoDB的插入和查询第2关:MongoDB的删除操作 第1关:mongoDB的插入和查询 编程要求 根据提示,在右侧编辑器补充代码,根据提示。 测试说明 平台会对你编写的代码进行测试: 测试输入&#…

Win10的SVN Adapter V1.0 中黄色感叹号 -- 解决

大部分都问题都可以通过: 关闭 SVN Adapter V1.0 在下载最新的 SVNDrv.sys替换 C:\Windows\System32\drivers 中的同名文件启动 SVN Adapter V1.0 就能成功 但是部分人的电脑 SVN Adapter V1.0 是有感叹号的,说明注册表有问题 先用 CCleaner 修复注册表…

电脑自动关机怎么设置?

电脑自动关机怎么设置?如果你是一名上班族,工作忙起来很多事情都会忘记做,有时候忙到很晚后紧急下班,就会忘记给电脑关机,电脑如果经常不关机,那么电脑就会超负荷的运转,大家都知道电脑的寿命是…