用pycharm调试代码:

import sys
sys.path.append('../demo/')
import tools

...


以上代码是import代码demo下的tools。

pycharm显示tools下面有红线,移动鼠标显示要不要更新,手欠更新了,结果进不去demo的tools了


请高手解决,操作如下:

1. python

2. import tools

3.help(tools)

显示:

Help on package tools:

NAME
    tools

FILE
    /usr/local/lib/python2.7/dist-packages/tools/__init__.py

PACKAGE CONTENTS
    const
    content
    control
    debug
所以应该下载了一个新的tools在目录/usr/local/lib/python2.7/dist-packages下。

解决方法,加一句话:
import sys
sys.path.append('../demo/')

sys.path.insert(0,'/home/hk/Downloads/caffe-master/demo/')

import tools


这样做应该是优先加入demo下的tools;

搜了一下博客http://www.cnblogs.com/bjdxy/archive/2012/11/12/2765867.html,别人这样解释:

针对谷歌API开发相应SEM工具过程中adwords API python版本的这句话,觉得好奇,研究了一下,由于sys.path是全局搜索路列表list,list具有insert方法,原型是insert(i,x)

i表示位置

x表示数据

意思是把数据x插入到位置i中

os.path.join('..', '..', '..', '..') 等于 http://www.cnblogs.com/http://www.cnblogs.com/../

即把http://www.cnblogs.com/http://www.cnblogs.com/../ 插入到sys.path 的0位置

为什么要插入到0位置而不是最后一个位置呢?我觉得应该是为了提升速度,只需找一次就能找到项目位置。

有关博客http://blog.csdn.net/chenjinyu_tang/article/details/6732053

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐