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创建进程fork用法
Jun 04 Python
Django中login_required装饰器的深入介绍
Nov 24 Python
分分钟入门python语言
Mar 20 Python
对Python 3.5拼接列表的新语法详解
Nov 08 Python
python linecache 处理固定格式文本数据的方法
Jan 08 Python
CentOS7安装Python3的教程详解
Apr 10 Python
使用tensorboard可视化loss和acc的实例
Jan 21 Python
Python原始套接字编程实例解析
Jan 29 Python
PyQt5+Pycharm安装和配置图文教程详解
Mar 24 Python
Python Scrapy图片爬取原理及代码实例
Jun 12 Python
Python生成并下载文件后端代码实例
Aug 31 Python
Python 统计序列中元素的出现频度
Apr 26 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模块 Memcached功能多于Memcache
2011/06/14 PHP
PHP中获取变量的变量名的一段代码的bug分析
2011/07/07 PHP
全新的PDO数据库操作类php版(仅适用Mysql)
2012/07/22 PHP
php中的mongodb select常用操作代码示例
2014/09/06 PHP
php简单实现查询数据库返回json数据
2015/04/16 PHP
PHP单例模式模拟Java Bean实现方法示例
2018/12/07 PHP
10个基于jQuery或JavaScript的WYSIWYG 编辑器整理
2010/05/06 Javascript
基于JQuery的动态删除Table表格的行和列的代码
2011/05/12 Javascript
jQuery遮罩层效果实例分析
2016/01/14 Javascript
js字符串操作总结(必看篇)
2016/11/22 Javascript
gulp解决跨域的配置文件问题
2017/06/08 Javascript
利用vue开发一个所谓的数独方法实例
2017/12/21 Javascript
使用 vue.js 构建大型单页应用
2018/02/10 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
2018/09/03 Javascript
[06:16]DOTA2守卫传承者——职业选手谈心路历程
2015/02/26 DOTA
[58:09]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第三场 6.2
2018/06/03 DOTA
Python监控主机是否存活并以邮件报警
2015/09/22 Python
浅谈终端直接执行py文件,不需要python命令
2017/01/23 Python
python导出chrome书签到markdown文件的实例代码
2017/12/27 Python
tensorflow 输出权重到csv或txt的实例
2018/06/14 Python
python 列表降维的实例讲解
2018/06/28 Python
浅析python redis的连接及相关操作
2019/11/07 Python
python实现最速下降法
2020/03/24 Python
Python如何使用ConfigParser读取配置文件
2020/11/12 Python
selenium设置浏览器为headless无头模式(Chrome和Firefox)
2021/01/08 Python
详解canvas drawImage()方法绘制图片不显示的问题
2018/10/08 HTML / CSS
Staples英国官方网站:办公用品一站式采购
2017/10/06 全球购物
台湾流行服饰购物平台:OB严选
2018/01/21 全球购物
个人找工作的自我评价
2013/10/17 职场文书
开学典礼主持词
2014/03/19 职场文书
区域销售主管岗位职责
2014/06/15 职场文书
医院合作意向书范本
2015/05/08 职场文书
匿名信格式范文
2015/05/27 职场文书
行政处罚告知书
2015/07/01 职场文书
2019年感恩励志演讲稿(收藏备用)
2019/09/11 职场文书
微信小程序中wxs文件的一些妙用分享
2022/02/18 Javascript