Pip換源,以及python解耦方法實現

一、 Pip換源

可以查看文章路徑

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy

二、 解耦

1.解耦思想
具體查看文章python解耦重構,提高程序維護性
https://editor.csdn.net/md/?articleId=140161169

  1. mysql 連接解耦
    主要實現方式為mysql配置項的提取,其中mysql 安裝方式查看mysql8.0.19安裝zip版本
    https://editor.csdn.net/md/?articleId=140093551。

三、解耦實現

  1. Pip換源安裝庫
    pip install mysql-connector-python
    pip install python-dotenv
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  mysql-connector-python
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  python-dotenv
  1. 配置文件 env 版本
    配置文件填寫,a.env。
    具體參數 DB_HOST ip , DB_DATABASE DATABASE 名稱 , DB_USER 用戶名 ,DB_PASSWORD 密碼。

DB_HOST=127.0.0.1
DB_DATABASE=customer_feedback
DB_USER=root
DB_PASSWORD=*******
  1. 配置文件 .ini 版本
    如果想用.ini結尾的可以查看,文章python解耦重構,提高程序維護性。
    4 .python 代碼實現
    解耦前
    connection = mysql.connector.connect(host='your_host',  # 數據庫主機地址database='your_database',  # 數據庫名稱user='your_user',  # 數據庫用戶名password='your_password'  # 數據庫密碼)

解耦后

  db_host = os.getenv('DB_HOST')db_database = os.getenv('DB_DATABASE')db_user = os.getenv('DB_USER')db_password = os.getenv('DB_PASSWORD')print(db_host)# 連接數據庫connection = mysql.connector.connect(host=db_host,database=db_database,user=db_user,password=db_password)

全部代碼實現(mysql 8.0版本使用)

import mysql.connector
from mysql.connector import Error
import os
from dotenv import load_dotenv
# 加載.env文件
load_dotenv('a.env',verbose=True)
def read_data_from_mysql():try:# 連接數據庫# connection = mysql.connector.connect(#     host='your_host',  # 數據庫主機地址#     database='your_database',  # 數據庫名稱#     user='your_user',  # 數據庫用戶名#     password='your_password'  # 數據庫密碼# )# 從環境變量中讀取數據庫連接信息db_host = os.getenv('DB_HOST')db_database = os.getenv('DB_DATABASE')db_user = os.getenv('DB_USER')db_password = os.getenv('DB_PASSWORD')print(db_host)# 連接數據庫connection = mysql.connector.connect(host=db_host,database=db_database,user=db_user,password=db_password)if connection.is_connected():db_Info = connection.get_server_info()print(f"Successfully connected to MySQL Server version {db_Info}")# 創建游標對象cursor = connection.cursor()# 執行查詢query = "SELECT * FROM feedback_2024"  # 更換為你的表名cursor.execute(query)# 獲取所有記錄列表records = cursor.fetchall()print("Total number of rows in table: ", cursor.rowcount)print("\nPrinting each row")for row in records:print(row)except Error as e:print(f"Error reading data from MySQL: {e}")finally:if (connection.is_connected()):cursor.close()connection.close()print("MySQL connection is closed")# 調用函數
read_data_from_mysql()

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/39694.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/39694.shtml
英文地址,請注明出處:http://en.pswp.cn/web/39694.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue中總線機制(EventBus) EventBus作為所有組件共享的事件中心

一、EventBus的簡介 EventBus 又稱時間總線 ,理解上來講 EventBus 機制是通知的概念,EventBus作為所有組件共享的事件中心,既可以發送事件也可以接受事件,所有組件都可以平行的接到到相對應的數據。 新建一個js文件 // EventBus…

雙指針算法:快速排序模擬實現

目錄 1.思路解析 2:代碼展示 1.思路解析 使用雙指針pre和cur 指針cur用于檢測符合條件的數據 cur和pre數據發生交換用于將符合條件的數據(比key小)向左扔 一輪循環結束時,以pre為分界點,除去key,pre左邊的…

物聯網IOT,講的什么?

想象一下,當你早晨醒來,智能咖啡機已經根據你的習慣準備好了香濃的咖啡;家中的溫度自動調節至最舒適的狀態;出門前,智能冰箱提醒你哪些食材需要補充……這些場景不再是科幻電影里的虛構,而是物聯網技術為我們帶來的現實便利。 物聯網的概念與起源 物聯網,顧名思義,是指…

SpringBoot項目,配置文件pom.xml的結構解析

pom.xml 是 Maven 項目對象模型&#xff08;Project Object Model&#xff09;的配置文件&#xff0c;它定義了 Maven 項目的基本設置和構建過程。以下是 pom.xml 文件的基本結構和一些常見元素的解析&#xff1a; 項目聲明 (<project>): <modelVersion>: 通常設置…

1.HI3559AV100 官方開發板sample運行

1.內核、文件系統部分 有關uboot&#xff0c;kernel&#xff0c;rootfs部分就不贅述&#xff0c;直接在SDK提供的鏡像文件進行燒錄即可。2.編譯MPP下的sample運行 實驗前準備&#xff1a;通過NFS方式掛載到開發板與主機通信傳輸文件 驅動和庫的部署&#xff1a;把MPP目錄下的…

單例模式詳解:概念與實用技巧

目錄 單例模式單例模式結構單例模式適用場景單例模式優缺點練手題目題目描述輸入描述輸出描述輸入示例輸出示例提示信息題解 單例模式 單例模式是一種創建型設計模式&#xff0c; 讓你能夠保證一個類只有一個實例&#xff0c; 并提供一個訪問該實例的全局節點。 只有一個實例的…

阿里巴巴店鋪電話采集軟件操作步驟解析

以下是一個簡單的程序&#xff0c;用于訪問1688店鋪并獲取店鋪信息&#xff1a; import requestsdef get_store_info(store_id):# 構建請求URLurl fhttps://detail.1688.com/offer/{store_id}.html# 發送GET請求response requests.get(url)# 如果請求成功if response.status…

震驚!運氣竟能如此放大!運氣的驚人作用,你了解嗎?

芒格&#xff1a;得到你想要的東西&#xff0c;最保險的辦法&#xff0c;就是讓自己配得上你想要的那個東西。今天仔細想了想這句話&#xff0c;他其實說的是無數成功人士的心聲 —— “我配得上&#xff01;” 美劇《絕命毒師》有個導演叫文斯吉里根&#xff08;Vince Gilliga…

注解【開發實踐】

文章目錄 一、注解概述1.1 什么是注解1.2 注解的作用1.3 一些特殊的注解 二、元注解2.1 Retention2.2 target2.3 Documented2.4 Inherited2.5 Repeatable 三、注解的使用3.1 定義注解3.2 編寫注解處理器3.3 注冊注解處理器 一、注解概述 1.1 什么是注解 注解&#xff08;Anno…

大疆2025校招內推

需要內推碼的請留言哦 期待你的加入

windows@資源管理器中的地址欄@訪問共享文件夾的各種方法@管理共享文件夾

文章目錄 資源管理器中的地址欄可以訪問什么訪問共享文件夾&#x1f47a;UNC路徑資源管理器打開共享文件夾純命令行方式訪問共享文件夾 共享文件夾相關操作查看所有已經共享的文件夾&#x1f47a;停止某個文件的共享 共享文件夾的訪問控制補充匿名訪問問題&#x1f60a;強制啟用…

集群限流sentinel實踐

參考&#xff1a; 集群模式 實踐 集群流控規則 其中 用一個專門的 ClusterFlowConfig 代表集群限流相關配置項&#xff0c;以與現有規則配置項分開&#xff1a; // 全局唯一的規則 ID&#xff0c;由集群限流管控端分配. private Long flowId;// 閾值模式&#xff0c;默認&…

吳恩達深度學習筆記:機器學習策略(2)(ML Strategy (2)) 2.5-2.6

目錄 第三門課 結構化機器學習項目&#xff08;Structuring Machine Learning Projects&#xff09;第二周&#xff1a;機器學習策略&#xff08;2&#xff09;(ML Strategy (2))2.5 數據分布不匹配時的偏差與方差的分析&#xff08;Bias and Variance with mismatched data di…

師從IEEE fellow|博士后加拿大阿爾伯塔大學成行

V老師指定申請加拿大&#xff0c;優先對方出資的博士后&#xff0c;如果外方無資助&#xff0c;也可以自籌經費&#xff0c;但要求必須是博士后頭銜。最終我們為其落實了加拿大阿爾伯塔大學的postdoctoral fellow&#xff08;博士后研究員&#xff09;&#xff0c;盡管是無薪職…

adb的使用

xcode&#xff1a;https://juejin.cn/post/7005854415420653604 安裝 https://zhuanlan.zhihu.com/p/662190715 使用 1.安卓手機打開開發者模式&#xff0c;并連接電腦 2.在mac終端輸入命令adb logcat | grep {tag_name}即可查看日志 常用命令&#xff1a; https://zhuan…

2024亞太杯中文賽數學建模選題建議及各題思路來啦!

大家好呀&#xff0c;2024年第十四屆APMCM亞太地區大學生數學建模競賽&#xff08;中文賽項&#xff09;開始了&#xff0c;來說一下初步的選題建議吧&#xff1a; 首先定下主基調&#xff0c; 本次亞太杯推薦大家選擇B題目。C題目難度較高&#xff0c;只建議用過kaiwu的隊伍…

倉頡——申請內測、環境搭建、編譯測試

2024年6月21日&#xff0c;華為倉頡正式公開發布。 不少同學看過倉頡白皮書后&#xff0c;都在找SDK從哪下載&#xff0c;HelloWorld怎么跑。倉頡公眾號也及時發布了內測的方式&#xff0c;我也親自走了一遍整個流程&#xff0c; 一&#xff0c;申請內測 關注“倉頡編程語言…

暗潮短視頻:成都柏煜文化傳媒有限公司

暗潮短視頻&#xff1a;涌動的新媒體力量 在數字化時代的浪潮中&#xff0c;短視頻以其獨特的魅力和無限的潛力&#xff0c;迅速成為新媒體領域的一股強大力量。而在這片繁榮的短視頻領域中&#xff0c;成都柏煜文化傳媒有限公司“暗潮短視頻”以其獨特的定位和深邃的內容&…

Beyond Low-frequency Information in Graph Convolutional Networks

推薦指數: #paper/??? #paper/&#x1f4a1; 發表于:AAAI21 簡稱:FAGCL 問題提出背景: GCN常常使用低頻信息,但是在現實中,不僅低頻信息重要,高頻信息頁重要 如上圖,隨著類間鏈接的增加,低頻信號的增強開始變弱,高頻信號的增強開始增加. 作者貢獻: 不僅低頻信號重要,高…

智能井蓋采集裝置 開啟井下安全新篇章

在現代城市的脈絡之下&#xff0c;錯綜復雜的管網系統如同城市的血管&#xff0c;默默支撐著日常生活的有序進行。而管網的監測設備大多都安裝在井下&#xff0c;如何給設備供電一直是一個難題&#xff0c;選用市電供電需經過多方審批&#xff0c;選用電池供電需要更換電池包&a…