Python自动识别开发环境测试环境生产环境代码模板
Posted 小基基o_O
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python自动识别开发环境测试环境生产环境代码模板相关的知识,希望对你有一定的参考价值。
获取主机地址
from socket import gethostname, gethostbyname
hostname = gethostname() # 获取主机名
print('hostname:', hostname)
host = gethostbyname(hostname)
print('host:', host) # 根据主机名获取主机地址
获取操作系统类型
import platform
system = platform.system()
if system == 'Windows':
print(system)
elif system == 'Linux':
print(system)
else:
print(system)
自动切换 开发环境、测试环境、生产环境
HOST_PRODUCTION = '生产环境HOST'
HOST_TEST = '测试环境HOST'
class ConfigCommon:
PORT = 3306 # 数据库的端口号
DATABASE = '库名'
class ConfigProduction(ConfigCommon):
HOST = '数据库的主机地址'
USER = '用户名'
PASSWORD = '密码'
class ConfigTest(ConfigCommon):
HOST = '数据库的主机地址'
USER = '用户名'
PASSWORD = '密码'
class ConfigDevelopment(ConfigCommon):
HOST = '数据库的主机地址'
USER = '用户名'
PASSWORD = '密码'
def get_host():
from socket import gethostname, gethostbyname
hostname = gethostname() # 获取主机名
print('hostname:', hostname)
host = gethostbyname(hostname)
print('host:', host) # 根据主机名获取主机地址
return host
def get_config():
host = get_host()
if host == HOST_PRODUCTION:
return ConfigProduction
elif host == HOST_TEST:
return ConfigTest
else:
return ConfigDevelopment
def connect(host, port, user, password, database):
return '数据库连接对象'
class Db:
def __init__(self):
config = get_config()
self.connection = connect(
host=config.HOST,
port=config.PORT,
user=config.USER,
password=config.PASSWORD,
database=config.DATABASE,
)
if __name__ == '__main__':
db = Db()
以上是关于Python自动识别开发环境测试环境生产环境代码模板的主要内容,如果未能解决你的问题,请参考以下文章
使用Maven自动打包配置文件生成开发环境,测试环境,生产环境