python:pycharm:突然之间引用同一个目录下的其他模块不出现代码提示的问题解决方法
同时,在主调模块中输入import进来的模块的名字,不会出现代码提示.......
居然没有代码提示
这是怎么个鬼情况呢???
改一改:
路径写全,问题解决了.
然而这仅仅是一种解决方案.
另外一种解决方案是这样的:
把这个包含文件的目录设置成Sources Root
pycharm就会索引里面的*.py文件了.....
然而有一个问题:
假如说我的工程里面有两个文件夹,都设置成了sources root,会发生什么情况呢??
我们可以看到,这个test.py把database文件夹下的模块classuser给引入进来了
---------------------------分割线------------------------------------------
那么,如果我们的程序脱离了pycharm之后会发生什么情况呢?
我们去这个项目的文件夹开一个终端命令行窗口,然后python一下test.py
果然,上下文依赖出现问题了.
解决的方法是: 把你的主程序文件放在一个文件夹里面去,然后它所有调用的模块都放在这个文件夹,或者这个文件夹的子文件夹里面去:
这样子,既可以在pycharm里面运行这个程序,也可以单独的使用命令行运行这个程序..
那么我想,在pycharm里面为了避免出现这种虚拟环境造成路径问题,可以考虑什么样的代码风格呢?
建议把你程序的主入口模块放在一个文件夹A中,所有他要调用的模块放在A的子文件夹里面,然后在写代码的时候,将模块的调用,写成:
子文件夹.模块名
欢迎拍砖讨论....
另外:使用pycharm,官方推荐的编码规范是 PEP8:
https://www.python.org/dev/peps/pep-0008/#imports
点这个链接,就可以看到pep8 对import的建议:
其中有一句:
所以,还是来整理一下你的文件结构,然后用绝对路径吧
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
【Java入门提高篇】Day32 Java容器类详解(十四)ArrayDeque详解
今天来介绍一个不太常见也不太常用的类——ArrayDeque,这是一个很不错的容器类,如果对它还不了解的话,那么就好好看看这篇文章吧。 看完本篇,你将会了解到: 1、ArrayDeque是什么? 2、ArrayDeque如何使用? 3、ArrayDeque的内部结构是怎样的? 4、ArrayDeque的各个方法是如何实现的? 5、ArrayDeque是如何扩容的? 6、ArrayDeque的容量有什么限制? 7、ArrayDeque和LinkedList相比有什么优势? 8、ArrayDeque的应用场景是什么? 一、ArrayDeque简介 ArrayDeque是JDK容器中的一个双端队列实现,内部使用数组进行元素存储,不允许存储null值,可以高效的进行元素查找和尾部插入取出,是用作队列、双端队列、栈的绝佳选择,性能比LinkedList还要好。听到这里,不熟悉ArrayDeque的你是不是有点尴尬?JDK中竟然还有这么好的一个容器类? 别慌,现在了解还来得及,趁响指还没有弹下去,快上车吧,没时间解释了。 来看一个ArrayDeque的使用小栗子: public class Deq...
- 下一篇
java反序列化漏洞入门分析
参考文献: https://nickbloor.co.uk/2017/08/13/attacking-java-deserialization/amp/https://www.cnblogs.com/ssooking/p/5875215.htmlhttps://xz.aliyun.com/t/2041https://xz.aliyun.com/t/2028https://xz.aliyun.com/t/2029?from=groupmessagehttps://www.anquanke.com/post/id/86932 JAVA序列化和反序列化的一个例子 package ser; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; impor...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS6,CentOS7官方镜像安装Oracle11G
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8编译安装MySQL8.0.19
- CentOS6,7,8上安装Nginx,支持https2.0的开启