Python之拆分目录
- 成分目录的好习惯,使得代码保持整洁,为以后的代码管理提供方便。
一、概念
一般目录有以下几个:
bin:程序入口,存放start文件。
conf:存放固定的配置信息,比如:连接redis的配置信息、连接mysql的配置信息等。
lib:存放main文件、tools文件等。
logs:存放日志
文件:
start文件:程序运行开始。
main文件:存放主逻辑。
tools文件:存放常用工具,比如:db连接、检查小数、等等。
二、引入自己文件夹下的模块
使用from 文件夹名.文件名 import 模块名
from conf.setting import mysql_info
如果输入import后,没有提示框显示文件中的模块名,则随便选中一个模块名,然后按住Ctrl键,鼠标左键点击该模块名,就会跳转到点击的模块名所在的python文件中,鼠标放在python文件浏览页签上,pycharm会显示它的绝对路径:

找到左侧路径的位置,将它所在的文件夹取消Source Root即可:

再将想要引入的模块所在的文件夹Source Root,然后重新输入import,找到自己想要导入的模块名,选择即可。

三、引入的模块内容是字典
模块内容是字典,如下所示:
#mysql的配置信息
mysql_info={
'host':'xxx.xxx.xxx.xxx',
'port':3306,
'user':'jxz',
'password':'',
'db':'jxz',
'charset':'tuf8',
'autocommit':True
}
引入该模块后,如何达到以下效果:
def my_db(sql):
conn=pymysql.connect(
host='xxx.xxx.xxx.xxx',
user='jxz',
password='',
db='jxz',
charset='utf8',
autocommit=True
)
cur=conn.cursor(cursor=pymysql.cursors.DictCursor)
cur.execute(sql)
res=cur.fetchall()
cur.close()
conn.close()
return res
只需将内容变为模块名,并在模块名前加两个星号即可:
import pymysql
from conf.setting import mysql_info def my_db(sql):
conn=pymysql.connect(**mysql_info)
cur=conn.cursor(cursor=pymysql.cursors.DictCursor)
cur.execute(sql)
res=cur.fetchall()
cur.close()
conn.close()
return res
加上两个星号之后,python会自动将字典里面的内容以k-v的方式转成k=v放到里面。
四、python文件拆分
当接口服务由多个人去完成时,就不能都在一个python文件里写了,这时就需要拆分python文件内容。由于函数都是绑定在server上的,因此可以将server服务单独放在一个python文件里,其余人在写不同的服务上,只需引入server即可:


bin目录下存放程序入口——start程序:


Python之拆分目录的更多相关文章
- python遍历一个目录,输出所有文件名
python遍历一个目录,输出所有文件名 python os模块 os import os def GetFileList(dir, fileList): newDir = dir if os. ...
- python之三级目录
#python之三级目录低配版 menu = { '北京':{ '朝阳':{ '国贸':{ 'CICC':{ }, 'HP':{ }, '渣打银行':{ }, 'CCTV':{ }, }, '望京': ...
- python之工作目录和文件引用
1.参考 如何获得Python脚本所在目录的位置 Python 相对导入与绝对导入 还没细看 2.不考虑exe打包 sys.path[0] #顶层运行脚本的绝对目录 os.path.split(os. ...
- Python数据分析学习目录
python数据分析学习目录 Anaconda的安装和更新 矩阵NumPy pandas数据表 matplotlib-2D绘图库学习目录
- 【转】python文件和目录操作方法大全(含实例)
python文件和目录操作方法大全(含实例) 这篇文章主要介绍了python文件和目录的操作方法,简明总结了文件和目录操作中常用的模块.方法,并列举了一个综合实例,需要的朋友可以参考下一.python ...
- python学习笔记目录
人生苦短,我学python学习笔记目录: week1 python入门week2 python基础week3 python进阶week4 python模块week5 python高阶week6 数据结 ...
- python获取指定目录下所有文件名os.walk和os.listdir
python获取指定目录下所有文件名os.walk和os.listdir 觉得有用的话,欢迎一起讨论相互学习~Follow Me os.walk 返回指定路径下所有文件和子文件夹中所有文件列表 其中文 ...
- Python OS 文件/目录方法
Python OS 文件/目录方法 os 模块提供了非常丰富的方法用来处理文件和目录.常用的方法如下表所示: 序号 方法及描述 1 os.access(path, mode) 检验权限模式 2 os. ...
- python常用模块目录
博客目录总纲首页 python其他知识目录 random hashlib os sys json __name__ shutil xlrd xlwt xlutils 核心模块:os s ...
随机推荐
- February 25th, 2018 Week 9th Sunday
LIfe is about making an impact, not making an income. 生命在于影响他人,而非赚钱糊口. From Kevin Kruse. You probabl ...
- C语言 统计一串字符中空格键、Tab键、回车键、字母、数字及其他字符的个数(Ctrl+Z终止输入)
//凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ #include<stdio.h> void main(){ , num=, blank=, ...
- Maven——settings.xml配置
settings.xml配置 原文 <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed ...
- python六十五课——单元测试(一)
对函数(模块中的)进行函数测试定义两个需要被测试的函数: #求和函数 def mySum(x,y): return x+y #相减函数 def mySub(x,y): return x-y print ...
- [BJOI2015]树的同构
嘟嘟嘟 判断树的同构的方法就是树上哈希. 如果树是一棵有根树,那么只要从根节点出发dfs,每一个节点的哈希值等于按传统方式算出来的子树的哈希值的结果.需要注意的是,算完子树的哈希值后要先排序再加起来, ...
- jira8.0.2安装与破解
环境: centos7.4 java1.8 jira版本:8.0.2 mysql :mariadb 软件下载: 破解包: atlassian-extras-3.2.jar 连接mysql驱动: mys ...
- 深入学习vue指令,自定义指令解决开发痛点
每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code v-model指令 vue.js的定义是一个mvvm框架,将它发挥到极致能够极大的提升 ...
- 【转】JS中setTimeout和setInterval的最大延时值详解
前言 JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInterval()这两个函数来完成.而这篇文中主要给大家介绍的是关于JS中setTi ...
- ActiveMQ 控制台使用方法
一.为什么使用ActiveMQ 在总线的设计中可能会使用到JMS(Java Message Service)通道, Java消息服务(JMS)超越了生产商专有的MOM(Message-Oriented ...
- git分支开发的好处
有不少开发者们不习惯使用Git分支开发.原因有如下几个方面?(1)不熟悉不习惯;(2)觉得太麻烦;今天我想说的是使用git分支开发绝对是一个高效版本控制的做法. 当你遇到测试人员给你提的bug,你只需 ...