python导入不同目录下的自定义模块过程解析


Posted in Python onNovember 18, 2019

这篇文章主要介绍了python导入不同目录下的自定义模块过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一、代码目录结构

python导入不同目录下的自定义模块过程解析

自定义的模块在Common包下,Study文件下SelectionSort.py文件导入自定义的模块

二、源码

2.1:SelectionSort.py文件

python导包默认是从sys.path中搜索的。

sys.path结果如下:['D:\\PyCharm\\source\\Study', 'D:\\PyCharm\\source', 'D:\\PyCharm\\source\\venv\\Scripts\\python36.zip', 'D:\\Python\\Python36\\DLLs', 'D:\\Python\\Python36\\lib', 'D:\\Python\\Python36', 'D:\\PyCharm\\source\\venv', 'D:\\PyCharm\\source\\venv\\lib\\site-packages', 'D:\\PyCharm\\source\\venv\\lib\\site-packages\\setuptools-40.8.0-py3.6.egg', 'D:\\PyCharm\\source\\venv\\lib\\site-packages\\pip-19.0.3-py3.6.egg']

从结果中可以看到,并没有Common,也就是说直接是不能导入Common下的模块的(即:不能写成from CreateData import createData)。处理方式如下:

2.1.1:

from Common.CreateData import createData

from Common.Swap import swap

2.1.2

sys.path.append('../Common')

from CreateData import createData

from Swap import swap

说明:网上大多数是第二种,将自定义模块路径加入到sys.path中,未找到第一种,这个可能是版本差异?前辈们用的python2.x,不支持包名.模块名?我用的是python3.6.8

import sys
sys.path.append('../Common') #模块所在目录加入到搜素目录中
from CreateData import createData
from Swap import swap


def selectSort(lyst):
  i = 0
  while i < len(lyst) - 1:
    minindex = i
    j = i + 1
    while j < len(lyst):
      if lyst[j] < lyst[minindex]:
        minindex = j
      j += 1
    if minindex != i:
      swap(lyst, i, minindex)
    i += 1
    print(lyst)
selectSort(createData())

2.2:CreateData.py文件

def createData():
   return [23, 45, 2, 35, 89, 56, 3]

2.3:Swap.py文件

def swap(lst, i, j):
   temp = lst[i]
   lst[i] = lst[j]
   lst[j] = temp

三、运行结果

python导入不同目录下的自定义模块过程解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
优化Python代码使其加快作用域内的查找
Mar 30 Python
python使用xlrd实现检索excel中某列含有指定字符串记录的方法
May 09 Python
python3 使用Opencv打开USB摄像头,配置1080P分辨率的操作
Dec 11 Python
Python遍历字典方式就实例详解
Dec 28 Python
基于TensorFlow常量、序列以及随机值生成实例
Jan 04 Python
python实现五子棋程序
Apr 24 Python
python3.4中清屏的处理方法
Jul 06 Python
python中如何使用虚拟环境
Oct 14 Python
python 解决函数返回return的问题
Dec 05 Python
python中K-means算法基础知识点
Jan 25 Python
如何在Python中妥善使用进度条详解
Apr 05 Python
Selenium浏览器自动化如何上传文件
Apr 06 Python
解决django model修改添加字段报错的问题
Nov 18 #Python
python sorted方法和列表使用解析
Nov 18 #Python
在Django中实现添加user到group并查看
Nov 18 #Python
Django继承自带user表并重写的例子
Nov 18 #Python
Django自定义用户表+自定义admin后台中的字段实例
Nov 18 #Python
Django 实现Admin自动填充当前用户的示例代码
Nov 18 #Python
Django 创建后台,配置sqlite3教程
Nov 18 #Python
You might like
PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例
2017/08/10 PHP
PHP pthreads v3在centos7平台下的安装与配置操作方法
2020/02/21 PHP
php计数排序算法的实现代码(附四个实例代码)
2020/03/31 PHP
javascript写的异步加载js文件函数(支持数组传参)
2014/06/07 Javascript
基于Bootstrap使用jQuery实现简单可编辑表格
2016/05/04 Javascript
AngularJS中的指令全面解析(必看)
2016/05/20 Javascript
jQuery Easy UI中根据第一个下拉框选中的值设置第二个下拉框是否可以编辑
2016/11/29 Javascript
js oncontextmenu事件使用详解
2017/03/25 Javascript
Vue-Router模式和钩子的用法
2018/02/28 Javascript
JavaScript同源策略和跨域访问实例详解
2018/04/03 Javascript
利用React Router4实现的服务端直出渲染(SSR)
2019/01/07 Javascript
12 种使用Vue 的最佳做法
2020/03/30 Javascript
编写v-for循环的技巧汇总
2020/12/01 Javascript
python进程类subprocess的一些操作方法例子
2014/11/22 Python
python基于windows平台锁定键盘输入的方法
2015/03/05 Python
解析Python中的二进制位运算符
2015/05/13 Python
Python中列表和元组的使用方法和区别详解
2020/12/30 Python
python交互式图形编程实例(二)
2017/11/17 Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
2018/05/21 Python
基于python历史天气采集的分析
2019/02/14 Python
python3 logging日志封装实例
2020/04/08 Python
python读取配置文件方式(ini、yaml、xml)
2020/04/09 Python
使用py-spy解决scrapy卡死的问题方法
2020/09/29 Python
html5嵌入内容_动力节点Java学院整理
2017/07/07 HTML / CSS
HTML5 和小程序实现拍照图片旋转、压缩和上传功能
2018/10/08 HTML / CSS
汇集了世界上最好的天然和有机美容产品:LoveLula
2018/02/05 全球购物
小学生红领巾广播稿
2014/01/21 职场文书
毕业生自荐书
2014/02/03 职场文书
幼儿园消防演练方案
2014/02/13 职场文书
办公室副主任职责范本
2014/03/08 职场文书
工作失误检讨书(3篇)
2014/10/11 职场文书
不尊敬老师检讨书范文
2014/11/19 职场文书
毕业证明模板
2015/06/19 职场文书
幼儿教师远程研修感悟
2015/11/18 职场文书
Python 实现绘制子图及子图刻度的变换等问题
2021/05/31 Python
分享几种python 变量合并方法
2022/03/20 Python