Python import其他层级的模块
【前言】
Python的文件目录结构虽然层次清晰,结构清楚,但是在调用的时候可能还是出现各式各样的找不到路径的错误。
【模块导入】
1、导入上一级目录的模块
python中导入上一级目录的模块有两种方法:
1>使用 sys.path.append('..')
import sys
sys.path.append('..')
2>使用 ..
from ....aliyunsdkcore.request import RpcRequest
这里的两个. 就是 .. 代表的是上一级,三个点是上一级的上一级,我们举个例子:

这里我们定位到SendSmsRequest.py的文件中,然后需要导入上面的request.py里的方法,那么我们就使用下面的方法导入:
from ....aliyunsdkcore.request import RpcRequest

当我们每输入一个点,pycharm会自动将该层级的目录只能提示到这里,所以我们很容易就找到了需要导入的模块路径。
2、导入同级的模块
导入同一层级模块的方法其实不用多说,直接import 模块名导入即可,相信大家也不会出现什么问题。
3、树莓派Ubuntu系统里的计划任务路径错误问题
有些朋友可能在玩树莓派,写一些python脚本执行的非常好,但是如果一安排到计划任务里面调用脚本,居然会出问题,这里也是一个路径的坑。
在Ubuntu的计划任务里,调用的脚本路径会在声明计划任务的时候给出,但是计划任务调用的脚本无法识别脚本里的相对路径的引用,这里就需要将脚本里的所有对其他脚本的引用路劲改成相对于根目录的绝对路径,这样就不会出错了。例如下面我在系统路径里面加入了根目录的位置:

Python import其他层级的模块的更多相关文章
- python import自己编写的模块:import json和simplejson
python import的模块都是库里面的,而自己的模块也可以添加 比如python的json处理,库里没有json文件,import json不行. 网上大部分人告诉你处理json用 dumps和 ...
- Python Import机制备忘-模块搜索路径(sys.path)、嵌套Import、package Import
出处:http://blog.csdn.net/kernelspirit/article/details/3381666 最近在看<Python源码剖析>,对Python内部运行机制比以前 ...
- python import 其他 package的模块
https://blog.csdn.net/luo123n/article/details/49849649 http://blog.habnab.it/blog/2013/07/21/python- ...
- python import 导入两个模块同时有同一名称的方法如何调用 ?
from moudule import *(这种方法不推荐) 一般不推荐使用"from 模块 import"这种语法导入指定模块内的所有成员,因为它存在潜在的风险. 比如同时导入 ...
- python import模块熟悉方法
python import导入的可用模块很多,新增速度较快,无法一次性全部掌握. 掌握熟悉一种模块的方法是非常有价值的技能. 探究模块可以从python解释器入手,具体流程记录如下: 以os模块为例: ...
- Python import用法
官方文档说明: Python code in one module gains access to the code in another module by the process of impor ...
- python 在不同层级目录import 模块的方法
有一个文件夹/home/a, 里面有个模块叫b.py, 我怎么把他import到程序里? 1). import sys; sys.path.append("/home/a/") ...
- 【转】【Python】Python中的__init__.py与模块导入(from import 找不到模块的问题)
python中的Module是比较重要的概念.常见的情况是,事先写好一个.py文 件,在另一个文件中需要import时,将事先写好的.py文件拷贝 到当前目录,或者是在sys.path中增加事先写好的 ...
- python import 模块异常问题
新项目开始了,(tornado,python) 结果出现了一个比较诡异的问题. import 自己的在conf文件夹下配置文件settings的时候, from conf.settings impor ...
随机推荐
- Android ListView Adapter的getItemViewType和getViewTypeCount多种布局
<Android ListView Adapter的getItemViewType和getViewTypeCount多种布局> 在Android的ListView中.假设在一个Lis ...
- Git(一)之基本操作详解
前言 在这段时间的工作中一直都是用Git作为版本控制,只是知道简单的几个命令,没有去了解它的内部原理.所以周末有时间来系统学习. 现在的公司基本上都是用Git作为版本控制,当然也有SVN的. Git是 ...
- Python笔记·第三章—— 逻辑运算
一.逻辑运算符的种类及优先级 ▷逻辑运算符包括 not and or ▷他们的优先级是 () > not > and > or 二.普通逻辑运算 ▷A and B ---> ...
- spring MVC上传附件
spring mvc为我们封装了十分简单的上传附件的方法,以下通过一个例子学习. 1.jsp <%@ page language="java" contentType=&qu ...
- Redis持久化方式
Snapsotting(快照)方式 snapsotting是默认方式,(把数据做一个备份,将数据存储在文件) 这种方式将内存中数据照快照方式写到二进制文件中.默认的文件名为"dump.rdb ...
- 一次对象过大引起的gc性能问题的分析与定位
现象:一个接口在4C的机器上跑最大只有7TPS,CPU使用率就已经90%多. 定位: 1. 使用top命令查看CPU使用情况,找到进程号 2. 使用top -H -pid命令,查看进程信息,看到有 ...
- 【java】java.lang.Math:public static long round(double a)和public static int round(float a)
package math; public class TestMath_round { public static void main(String[] args) { System.out.prin ...
- 《Office 365 开发入门指南》公开邀请试读,欢迎反馈
终于等来了这一天,可以为我的这本新书画上一个句号.我记得是在今年的2月份从西雅图回来之后,就萌发了要为中国的Office 365开发人员写一些东西并最终能帮到更多中国用户的想法,而从2月26日正式写下 ...
- 简单记录一下原生ajax
面试老忘记,代码如下 function ajax() { var xmlHttpRequest = null; //定义XMLHttp对象的容器 if(window.XMLHttpRequest) { ...
- Zabbix自动发现java进程
一:简介 使用Python psutil模块,查找java模块,并获取启动命令,结合zabbix监控自动监控.点击下载 二:操作 发现脚本 #!/usr/bin/env python # coding ...