pycharm import 同路径下.py文件和文件夹报红解决方案
问题描述
pycharm中从同文件夹目录下导入其他.py文件和其他文件夹报错
解决方法1
如果要导入的包是一个文件夹,例如我想要导入同目录下的pytorch-pretrain-bert
,由于我的环境里本来就是有pytorch-pretrain-bert
这个包的,所以解释器默认会从后端path去编译,也就是两个包名重复了。
最简单的办法是在导入包前面加上.
,指明了要导入的包是当前py文件同路径下的,这样就消除了歧义
解决方法2(推荐)
上述的方法只能解决导入的是其他文件夹,但是如果要导入其他.py文件就不行
主要原因还是目标文件不在pycharm编译path下,右键将其加入到source root
另外,在pycharm里面,你只有将direction设置为source,这个direction下面的package才能正常显示(也就是python包的样子,不然看上去会和普通direction没差别),所以绝大多数情况下,在使用pycharm的时候把一些direction设置为source是没什么坏处的。
解决方法3
直接将当前文件夹路径加入到运行编译路径下
import sys
import os
sys.path.append(os.path.abspath("../"))
这样main.py在编译运行的时候,解释器会额外从"…/"下去找包,虽然命令行里面run没有问题,但是pycharm里面还是会报红,强迫症的表示不能接受
解决方法4(推荐)
将该direction初始化为package
换句话说,就是直接在这个direction下面新建一个空的’__init__.py
'文件
pycharm import 同路径下.py文件和文件夹报红解决方案相关推荐
- 编写文件搜索小程序:1. 输入绝对路径以及搜索关键字,2. 搜索指定路径下(包括子文件夹)中名称包含关键字的所有文件并打印出,3. 将当前操作记录日志
package com.homework;import java.io.File; import java.io.FileOutputStream; import java.io.IOExceptio ...
- R语言使用fs包的dir_create函数在指定路径下创建新的文件夹、使用file_create函数在指定文件夹下创建文件
R语言使用fs包的dir_create函数在指定路径下创建新的文件夹.使用file_create函数在指定文件夹下创建文件 目录
- 将指定路径下的所有SVG文件导出成PNG等格式的图片(缩略图或原图大小)
原文:将指定路径下的所有SVG文件导出成PNG等格式的图片(缩略图或原图大小) WPF的XAML文档(Main.xaml): <Window x:Class="SVG2Image.Ma ...
- C#取得指定路径下所有目录及文件名称(可递归)
1using System.IO; 2 3/**//// <summary> 4/// 取得指定路径下所有目录及文件名称(可递归) 5/// </summary> ...
- 更好地整理数据:windows下怎么让不同路径下的两个文件夹保持同步内容
目录 1.使用"同步工具"软件 2.使用Robocopy命令 3.Robocopy的一个小例子 4.自动复制 4.1打开任务计划程序 4.2 创建任务 4.3 设置触发器 4.4 ...
- Windows·查找某路径下所有的Office文件及压缩文件
阅文时长 | 0.17分钟 字数统计 | 285.6字符 主要内容 | 1.引言&背景 2.声明与参考资料 『Windows·查找某路径下所有的Office文件及压缩文件』 编写人 | SCs ...
- 转 安卓解决 IDEA 下 struts.xml 中 extends=“struts-default“ 报红的问题
解决 IDEA 下 struts.xml 中 extends="struts-default" 报红的问题 现象 在IDEA中配置struts.xml时 extends=" ...
- idea使用Maven工具pom文件报红解决方案
#idea使用Maven工具pom文件报红解决方案 很多初次使用maven的小伙伴都会碰到pom文件报红的现象,你是不是对此很苦恼,试了很多方案都无法解决,此次为大家提供一个比较完整的解决步骤,让你更 ...
- 解决 IDEA 下 struts.xml 中 extends=“struts-default“ 报红的问题
解决 IDEA 下 struts.xml 中 extends="struts-default" 报红的问题 参考文章: (1)解决 IDEA 下 struts.xml 中 exte ...
最新文章
- 转载:【菜鸟玩Linux开发】通过MySQL自动同步刷新Redis
- 机器学习的前期入门汇总
- 史上最强画图工具推荐
- 编程使用资源文件实现多语言页面(In Action)
- javascript Event对象
- 怎么压缩html的文件,css如何压缩?
- 【校招VIP 前端】电影详情模块的开发文档设计实战
- 题解 P1550 【[USACO08OCT]打井Watering Hole】
- Vue中router-link路由跳转以及传参方式
- 基于vue2全家桶实现的,仿移动端QQ
- Iphone版同步推闪退问题
- 计算机ip地址是指什么作用是什么,ip地址的作用是什么
- Excel中如何统计一行中指定类型元素的个数
- 英语语音篇 - 看词能读
- 一种用于NDN的安全的链路状态路由协议
- 如何在Windows 10上退出安全模式
- 嵌入式硬件入门——Flash Memory(W25Q64+SPI协议)
- flink+mysql+connector_Flink SQL中connector的定义和实现
- centos安装minikube
- 光谷计算机专业好的学校,华一寄、华一初、华一光谷哪所学校更好(综合对比)...
热门文章
- 修改Config文件
- csv文件和excel文件
- 受控电源(SOC PWM调压SVB)计算工具CVC使用说明
- Cesium中加载Geojson
- 新春限定:新红包封面项目
- 第9章第4节:制作商业计划书的目录页面 [PowerPoint精美幻灯片实战教程]
- Mac快捷键大全(常用的可以修改)
- arcade 读取地图信息时:错误: ‘gbk‘ codec can‘t decode byte 0x91 in position 314: illegal multibyte sequence
- android+饭否+开源,饭否Android客户端推荐:有饭
- git安装及使用,超详细版