首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从从中调用.py脚本的文件夹导入文件?

从中调用.py脚本的文件夹导入文件,可以通过以下步骤实现:

  1. 确保.py脚本文件和要导入的文件位于同一个文件夹中。
  2. 在需要导入文件的.py脚本中,使用Python的内置模块sys和os来操作文件路径。
  3. 在.py脚本中添加以下代码来将要导入的文件夹路径添加到系统路径中:
代码语言:txt
复制
import sys
import os

# 获取当前脚本文件的路径
current_path = os.path.dirname(os.path.abspath(__file__))

# 要导入的文件夹路径
folder_path = os.path.join(current_path, '要导入的文件夹名称')

# 将文件夹路径添加到系统路径中
sys.path.append(folder_path)
  1. 然后就可以在.py脚本中使用import语句导入文件夹中的文件了,例如:
代码语言:txt
复制
import 文件名

这样就可以从中调用.py脚本的文件夹导入文件了。

注意:在导入文件之前,确保要导入的文件夹中包含一个名为init.py的空文件,以使其成为一个Python包。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何把.csv文件导入到mysql中以及如何使用mysql 脚本load data快速导入

1, 其中csv文件就相当于excel中另一种保存形式,其中在插入时候是和数据库中表相对应,这里面的colunm 就相当于数据库中一列,对应csv表中一列。...demo fields terminated by ',' enclosed by '\\'' lines terminated by '\\r\\n'  (`A`,`B`) "; 这句话是MySql脚本在...java中使用,这个插入速度特别快,JDBC自动解析该段代码进行数据读出,并且插入到数据库。...要注意在load data中转义字符使用。 如果要使用load data直接进行执行一下这句话,(不过要记得更改成自己文件名  和 表名)就可以把文件内容插入,速度特别快。...值得一试哦 下面是我给出一段最基本 通过io进行插入程序,比较详细。

5.8K40

一文搞懂 Python 模块和包,在实战中最佳实践

为了把业务隔离,做更立体化,使得功能相关性模块聚在一起,就可以用文件夹,将模块分门别类存放其中,这些文件夹,就是 package 包。...在 Python 3.3 版本以前,文件夹下必须要包含一个 __init__.py 文件,此文件夹才会被视为包,而 Python 3.3 版本之后,文件夹直接被视为包,无须显式包含 __init__....你可以在此文件中,导入其他模块,定义 变量、函数、类 等,进行一些预定义工作,然后在用 import 导入包或包里模块时,被导入包下初始化文件会被自动调用执行。...二者选其一,如何抉择 绝对导入和相对导入都不能满足我想要效果:既支持主程序执行,也支持单独测试某个模块。而现在,二者在不做任何特殊处理情况下,均不支持单独以脚本直接执行方式,测试某个模块。...要如何解决? 解决方案有3种,前两种针对绝对导入,最后一种针对相对导入

1.5K41

小问题大隐患:如何正确设置 Python 项目的入口文件

因为 VSCode 视角看,lib文件夹确实就是在工作区下面的。 但是,当他在 VSCode 里面运行这个start.py文件时,Python 是bin文件夹下面运行。...如果仅仅从技术上来说,你非要导入 bin 文件夹文件夹下面的其他模块,也并不困难,我在一日一技:导入文件夹模块并读取当前文件夹资源一文中讲到了具体做法。 但问题在于,你不应该这样做。...from utils.abc import time_format 你根本不可能出现需要导入文件夹某个模块情况。 只有工具脚本,才需要单独使用一个文件夹来存放,然后调用文件夹其他文件。...这种情况下,你调用文件夹内容是可以接受。但这毕竟只是工具脚本。 可能还有同学要问,那如果我项目是一个 Python 包,它本身没有入口文件怎么办呢?...在项目根目录留下一个example.py文件,用来演示如何调用这个包。而这个包本身代码,是在一个叫做gne文件夹。这个gne文件夹是一个包,它入口文件在__init__.py中。

2.3K11

python包package和模块module导入深入详解

我们来看看在Python中如何实现这点: from functools import lru_cache 上面这行代码可以让你直接调用 lru_cache。...这里我们以PEP 328中给出文件夹结构为例,看看相对导入如何工作: my_package/ __init__.py subpackage1/ __init__.py...module_x.py module_y.py subpackage2/ __init__.py module_z.py module_a.py 在本地磁盘上找个地方创建上述文件文件夹...试着执行这个脚本,看看会发生什么。 使用局部作用域好处之一,是你使用模块可能需要很长时间才能导入,如果是这样的话,将其放在某个不经常调用函数中或许更加合理,而不是直接在全局作用域中导入。...其实,你运行这个文件时候,Python解释器首先在当前运行脚本所处文件夹中查找名叫 math模块。在这个例子中,解释器找到了我们正在执行模块,试图导入它。

2.8K10

关于Python导入模块,你可能没学透?!

我们来看看在Python中如何实现这点: from functools import lru_cache 上面这行代码可以让你直接调用 lru_cache。...这里我们以PEP 328中给出文件夹结构为例,看看相对导入如何工作: my_package/ __init__.py subpackage1/ __init__.py...module_x.py module_y.py subpackage2/ __init__.py module_z.py module_a.py 在本地磁盘上找个地方创建上述文件文件夹...试着执行这个脚本,看看会发生什么。 使用局部作用域好处之一,是你使用模块可能需要很长时间才能导入,如果是这样的话,将其放在某个不经常调用函数中或许更加合理,而不是直接在全局作用域中导入。...其实,你运行这个文件时候,Python解释器首先在当前运行脚本所处文件夹中查找名叫 math模块。在这个例子中,解释器找到了我们正在执行模块,试图导入它。

82450

用了几年 Python,但你可能连这个都没学透

我们来看看在 Python 中如何实现这点: from functools import lru_cache 上面这行代码可以让你直接调用 lrucache。...这里我们以 PEP 328 中给出文件夹结构为例,看看相对导入如何工作: my_package/ __init__.py subpackage1/ __init__...module_a.py 在本地磁盘上找个地方创建上述文件文件夹。...试着执行这个脚本,看看会发生什么。 使用局部作用域好处之一,是你使用模块可能需要很长时间才能导入,如果是这样的话,将其放在某个不经常调用函数中或许更加合理,而不是直接在全局作用域中导入。...其实,你运行这个文件时候,Python 解释器首先在当前运行脚本所处文件夹中查找名叫 math 模块。在这个例子中,解释器找到了我们正在执行模块,试图导入它。

73741

关于Python导入模块,你可能没学透?!

这里我们以PEP 328中给出文件夹结构为例,看看相对导入如何工作: my_package/ __init__.py subpackage1/ __init__.py module_x.py...module_y.py subpackage2/ __init__.py module_z.py module_a.py 在本地磁盘上找个地方创建上述文件文件夹。...import subpackage2 接下来进入 subpackage1文件夹,编辑其中 __init__.py文件,输入以下代码: from ....试着执行这个脚本,看看会发生什么。 使用局部作用域好处之一,是你使用模块可能需要很长时间才能导入,如果是这样的话,将其放在某个不经常调用函数中或许更加合理,而不是直接在全局作用域中导入。...其实,你运行这个文件时候,Python解释器首先在当前运行脚本所处文件夹中查找名叫 math模块。在这个例子中,解释器找到了我们正在执行模块,试图导入它。

90430

Python类、模块、包区别

如果脚本文件是作为主程序调用,其值就设为__main__,如果是作为模块被其他文件导入,它值就是其文件名。 每个模块都有自己私有符号表,所有定义在模块里面的函数把它当做全局符号表使用。...from module import names 可以直接模块中导入名字到符号表,但模块名字不会被导入。...然后是一些模块文件和子目录,假如子目录中也有 init.py 那么它就是这个包子包了。 在创建许许多多模块后,我们可能希望将某些功能相近文件组织在同一文件夹下,这里就需要运用包概念了。...包对应于文件夹,使用包方式跟模块也类似,唯一需要注意是,当文件夹当作包使用时,文件夹需要包含__init__.py文件,主要是为了避免将文件夹名当作普通字符串。...可以包中导入单独模块。 1). import PackageA.SubPackageA.ModuleA,使用时必须用全路径名 2).

1.1K20

一日一技:Python工具脚本如何调用外层模块

入口文件应该在最外面,调用关系应该是从外向内调用。绝对不能学Java,从一个很深层文件夹里面往外调用。 不过我在这篇文章最后,也提到了一种例外情况,那就是工具脚本不受这个规则限制。如下图所示。...今天有同学在问我,这种情况应该怎么调用,才能让remove_outdated_data.py正确导入models里面的模块。我们就来说明一下。...首先,我们来创建一个示例程序,结构如下图所示: 其中,aa.py文件内容为: def i_am_func(): print('我是一个函数') test.py文件内容为: from models.aa...我们只需要在项目根目录执行下面这个命令就可以了: python -m tools.test 如下图所示: 如果工具脚本在很深文件夹里面,那么路径只需要使用点分割就可以了。...例如下面的文件结构: 要运行second.py,那么命令就写成: python -m tools.deep.folder.second 如果你工具脚本有参数,也可以正常添加,例如: python -

9110

一日一技:导入文件夹模块并读取当前文件夹资源

摄影:产品经理 产品经理独自在深圳吃早餐 在某些特殊情况下,我们 Python 脚本需要调用父目录下其他模块。例如: ?...在编写 GNE 测试用例时,有一个脚本 generate_new_cases.py放在 tests文件夹中。而 tests 文件夹与 gne 文件夹放在同一个位置。其中 gne 文件夹是一个包。...我现在需要从generate_new_cases.py 文件导入 gne 里面的一个类GeneralNewsExtractor。 为了简化问题,我单独写了一个演示样例。...它文件结构与每个文件内容如下: ? 现在,我直接在 scripts 文件夹里面运行run.py会报错,提示最顶层之外相对导入。...这种写法,当我们在scripts 文件夹里面运行run.py时,确实已经正常了。但是如果我们在scripts文件夹文件夹再运行代码,又不对了,如下图所示: ?

2K30

【测试开发】python系列教程:argparse 模块

Python内置sys.argv保存了完整参数列表,我们可以从中解析出需要参数: # tesone1.py import sys print(sys.argv) source = sys.argv...,但参数稍微复杂点,比如可以使用-d复制目录,使用--filename *.py过滤文件名等,解析起来就非常麻烦。...可以执行 python tesone1.py -h 看下结果: 这就是告诉我们这个文件应该怎么用,带什么参数 接着我们通过对象add_argument函数来增加参数。...通常,这些调用指定 ArgumentParser 如何获取命令行字符串并将其转换为对象。这些信息在 parse_args() 调用时被存储在ArgumentParser实例化对象中,以供后续使用。...args = parser.parse_args() 在脚本中,通常 parse_args() 会被不带参数调用,而 ArgumentParser 将自动 sys.argv 中确定命令行参数。

15810

一、Arcpy介绍和安装【ArcGIS Python系列】

可以通过ArcPy调用ArcGIS Pro中几乎所有的工具,将其与其他Python工具结合使用,形成自己工作流程。...Python脚本在ArcGIS Pro中应用可实现自动执行复杂任务,避免繁琐软件操作界面。...利用Arcpy我们可以编写一个 Python 脚本以检查多个数据集坐标系,然后都转为指定坐标系。...方法二:直接复制环境文件夹 下面说明如何快速克隆环境,简单来说就是直接复制arcgispro-py3文件夹: 找一个你认为合适存放克隆文件夹位置,我在此处将文件夹放在了conda环境文件夹下"C:\... Python 命令提示符中,使用适当版本号运行以下命令: conda install arcpy=3.0 -c esri 具体留在如何配置机器学习arcpy环境中一起说明。

68610

Python 编程 | 连载 19 - Package 和 Module

一、Python 中包及包导入 包既文件夹,包中可以包含子包既子文件夹,一个个 Python 脚本就是模块,模块中有包含了类和函数。...模块中Hero对象被实例化了' 包和模块导入 导入既将 Python 中某个包或者模块导入当前脚本中,导入使用 from 和 import 关键字,模块被导入后,就可以在当前文件中使用导入模块函数类或者变量等...import 关键字导入 在lilith包新建一个lilith.py脚本文件,在该文件中新增lilith函数 def lilith(): print('lilith包下lilith模块中...lilith函数被调用') 在 test.py 文件中想要引用 lilith 函数,就必须使用 from import 关键字导入lilith模块,通过lilith模块调用lilith函数 from...直接将需要用到变量、类导入到当前lilith包中,这样在test.py文件中可以直接lilith模块中导入这些变量 from lilith import Hero, heros_org_name

45720

Python 自动化指南(繁琐工作自动化)第二版:九、读取和写入文件

注意当我调用os.path.getsize()时,我是如何使用os.path.join()将文件夹名和当前文件名连接起来。os.path.getsize()返回整数加到totalSize值上。...一旦我们将cats中数据作为一个字符串,就很容易将该字符串写入一个文件,我们称之为myCats.py。 一个import语句导入模块本身就是 Python 脚本。...当来自pprint.pformat()字符串被保存到py文件时,该文件是一个可以像其他模块一样导入模块。 因为 Python 脚本本身只是带有py文件扩展名文本文件。...你 Python 程序甚至可以生成其他 Python 程序。然后,您可以将这些文件导入脚本。...mcbShelf.close() 通常做法是将一般用法信息放在文件顶部注释中 ➊。如果您忘记了如何运行您脚本,您可以随时查看这些注释作为提醒。然后你导入模块 ➋。

3.4K51
领券