iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python跨文件夹调用别的文件夹下的py文件或参数方式
  • 583
分享到

python跨文件夹调用别的文件夹下的py文件或参数方式

开发语言python 2023-09-11 11:09:28 583人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录 摘要: 第一章   运行另一个py文件 (1)在file_A.py中运行file_B.py文件,注意这里是运行,不是引用 (2)file_B.py使用file_A.py传递的参数 (3) 引用另一个py文件中的变量或者方法 第二章 

目录

摘要:

第一章   运行另一个py文件

(1)在file_A.py中运行file_B.py文件,注意这里是运行,不是引用

(2)file_B.py使用file_A.py传递的参数

(3) 引用另一个py文件中的变量或者方法

第二章 python调用自己写的py文件

(1)同一个目录下的文件

(2)不同目录下的文件

(3)多个文件在多个目录的调用

第三章 关于__init__.py的解释 

(1)初始化包中各个模块,批量导入

(2)__init__.py中的__all__,全部导入所声明的模块

第四章 关于pyc与pyo文件

第五章 模块导入时内部的原理

(1)import可导入的对象可以是以下类型:

(2)解释器工作:

(3)因此可以理解导入文件的三种方式:


摘要:

        本文章主要介绍了python运行或调用另一个py文件或参数方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,请提出来。

第一章   运行另一个py文件

(1)在file_A.py中运行file_B.py文件,注意这里是运行,不是引用

import osos.system("Python file_B.py para_a1 para_a2")#其他形式os.system("python file_B.py %s" % para_A)os.system("python file_B.py " + para_A)

需要注意文件路径的写法,在Docker中运行文件,文件名前面需要加/,如os.system("python /file_B.py")

(2)file_B.py使用file_A.py传递的参数

import sysprint(sys.argv)#由打印的结果可知,sys.argv[1:]是命令行传递的参数,sys.argv[0]是命令行运行的文件名para_B = sys.argv[1]

(3) 引用另一个py文件中的变量或者方法

from file_A import df_A

第二章 python调用自己写的py文件

(1)同一个目录下的文件

        同一个目录下直接写import xx就好了,xx为自己要调用的模块名字,虽然会有下划线报错,其实,没有错,仍然可以调用,这个下划线可以忽略。

(2)不同目录下的文件

        不同路径下的文件先要调用添加路径sys.path.append(r"C:\xxx"),再做引用

import sys#首先,添加路径,windows的路径和linux的路径符号不同\\,/,注意区别#r是为了告诉python这是路径,别#把\n等特殊组合给转译)sys.path.append(r"C:\xxx")#下面import就可以了import aimport b

(3)多个文件在多个目录的调用

        首先我们也可以多次写sys.path.append(r"C:\xxx")来添加多个目录,但是这样有点麻烦,每次新建个工程可能就要加很多代码去调用公共单元。

        解决方法是添加一个空的__init__.py文件(用于定义包的属性和方法,可以为空),表示这是一个包,比如这样,声明了aaa为一个包,a是内部的方法。

也可以这样,表示bbb是一个包,bb是bbb的子包,b是bb包的内部的方法

  如果你需要调用a.py与b.py:

import aaa.aimport bbb.bb.bimport ccc.c

如果你在c.py文件,想要调用a.py,b.py只需要用到步骤2的知识即可,比如 

import sys#添加上级目录sys.path.append("..//")import aaa.aimport bbb.bb.b

第三章 关于__init__.py的解释 

__init__.py作用是将文件夹变为一个Python模块,导入包时,事实上是导入了它的__init__.py文件

__init__.py 文件可以为空,但是也可以添加如下两个功能

(1)初始化包中各个模块,批量导入

pack包,配置__init__.py

1

2

import a

import b

导入pack包

访问__init__.py文件中的引用文件,需要加上包名

(2)__init__.py中的__all__,全部导入所声明的模块

此时导入pack包就相当于导入了a.py,b.py,c.py

pack包,配置__init__.py

1

__all__ = ['a', 'b', 'c']

调用

1

from pack import *

第四章 关于pyc与pyo文件

pyc就是py编译时生成的字节码文件,以后每次导入都会执行pyc,当py文件更新时pyc也会更新

如果解释器添加-o命令,py编译时会生成pyo文件,它相比pyc去掉了断言(assert)、断行号以及其他调试信息,运行速度更快

如果使用-OO选项,生成的pyo文件会忽略文档信息

第五章 模块导入时内部的原理

(1)import可导入的对象可以是以下类型:

  • 模块文件(.py文件)
  • C或c++扩展(已编译为共享库或DLL文件)
  • 包(包含多个模块)
  • 内建模块(使用C编写并已链接到Python解释器中)
  • 理解为后缀就是.py、.pyo、.pyc、.pyd、.so、.dll

(2)解释器工作:

根据导入的文件名创建命名空间(用来访问文件内部属性与方法)

在命名空间内执行源代码

创建一个源代码文件的对象,这个对象引用对应的命名空间,管理模块的内部函数与变量

一个模块可以多次导入,但是后面导入的模块只执行第三步

sys.modules可以打印出导入的模块名与模块对象的映射

(3)因此可以理解导入文件的三种方式:

  • import a.b:把a.b导入全局命名空间,想要调用c方法需要a.b.c
  • from a import b:把b导入全局命名空间,b.c
  • from a.b import c:把b的属性c直接导入命名空间

 

来源地址:https://blog.csdn.net/fyq158797/article/details/130226881

--结束END--

本文标题: python跨文件夹调用别的文件夹下的py文件或参数方式

本文链接: https://www.lsjlt.com/news/403064.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python跨文件夹调用别的文件夹下的py文件或参数方式
    目录 摘要: 第一章   运行另一个py文件 (1)在file_A.py中运行file_B.py文件,注意这里是运行,不是引用 (2)file_B.py使用file_A.py传递的参数 (3) 引用另一个py文件中的变量或者方法 第二章 ...
    99+
    2023-09-11
    开发语言 python
  • python运行或调用另一个py文件或参数方式
    目录python运行或调用另一个py文件或参数1. 运行另一个py文件2. 引用另一个py文件中的变量python调用自己写的py文件python如何调用自己写的py文件呢?如果是不...
    99+
    2024-04-02
  • python 跨文件夹引用
    python实现不同层级目录import 模块的方法 python目前也像php一样越来越多的朋友使用它了,今天 小编在学习python时碰到不同层级引用的问题,希望可以帮助到大家。 一、同级目录下的调用 程序结构如下: -...
    99+
    2023-01-31
    文件夹 python
  • 怎么在python中引入其他文件夹下的py文件
    今天就跟大家聊聊有关怎么在python中引入其他文件夹下的py文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。红色方框要引入箭头里面的import syssys.path...
    99+
    2023-06-15
  • nodejs清空/删除指定文件夹下面所有文件或文件夹的方法示例
    同步函数: //使用fs.readdir()方法读取文件夹中的所有文件和文件夹,然后使用递归来删除每个文件和文件夹。 const fs = require('fs'); const ...
    99+
    2023-05-15
    nodejs 清空 删除 文件夹 文件
  • 删除文件或文件夹的多种方法
    删除文件或文件夹的多种方法 当杂乱无章的文件或文件夹造成磁盘空间无谓消耗时,您便可利用由Windows XP提供的多种方法将不再需要的文件或文件夹删除掉。您可在Windows资源管理器中利用以下任意一种方法执行删除操作:...
    99+
    2023-05-24
    删除文件 文件夹 多种方法 文件 方法
  • Python遍历文件夹下所有文件的方法
    在这里跟大家分享一个Python编程过程中的知识点——遍历文件夹下所有文件! 在python中,遍历文件夹及其子文件夹中的所有文件有两种方法。 两者均返回文件名列表(可以选择文件名列表或者是包含完整路径的文件名列表)。 一种是使用...
    99+
    2023-01-31
    遍历 文件夹 文件
  • python如何遍历文件夹下的文件
    python遍历文件夹下文件的方法:1、在python脚本中导入os模块;2、通过for循环语句实现遍历文件夹下文件操作即可。具体操作方法:首先需要在python脚本中导入os模块进行文件操作。import os通过for循环语句判断目录是...
    99+
    2024-04-02
  • java io文件操作删除文件或文件夹的方法
    这篇文章主要讲解了“java io文件操作删除文件或文件夹的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java io文件操作删除文件或文件夹的方法”吧!一、删除文...
    99+
    2023-06-29
  • python列举文件夹下所有文件行数
        在群里聊天,看到一段代码,是可以统计文件夹下所有文件的行数,觉得不错,记录下来,以备将来有用的时候来派用场,下面贴上代码:   import os import fileinput dest="/root/log" for root...
    99+
    2023-01-31
    文件夹 行数 文件
  • 怎么用php删除文件夹下的某个子文件夹
    如果你是一个 PHP 开发者,你可能会遇到需要删除文件夹下的某个文件夹的需求。虽然 PHP 提供了删除文件和文件夹的内置函数,但却没有提供单独删除文件夹的函数。在这篇文章中,我们将向你展示如何使用 PHP 删除文件夹下的某个子文件夹。删除文...
    99+
    2023-05-14
    php php文件目录
  • 如何用php删除文件夹下的某个子文件夹
    本文小编为大家详细介绍“如何用php删除文件夹下的某个子文件夹”,内容详细,步骤清晰,细节处理妥当,希望这篇“如何用php删除文件夹下的某个子文件夹”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。删除文件夹下的子文...
    99+
    2023-07-05
  • java io文件操作删除文件或文件夹的7种方法
    目录一、删除文件或文件夹的四种基础方法二、如何删除整个目录或者目录中的部分文件前提准备2.1. walkFileTree与FileVisitor2.2.Files.walk2.3.传...
    99+
    2024-04-02
  • makefile如何编译文件夹下的文件
    在Makefile中,可以使用通配符(wildcard)来获取文件夹下所有文件的列表,然后使用规则来编译这些文件。以下是一个示例的M...
    99+
    2023-09-12
    makefile
  • c#怎么获取文件夹下的文件
    可以用两种方法获取文件夹下的文件:1. 使用 directory.getfiles() 方法返回字符串数组;2. 使用 directoryinfo.getfiles() 方法返回 fil...
    99+
    2024-05-12
    c# 字符串数组
  • C++遍历某个文件夹下面的子文件夹及其所有文件
    方法一 下面是输出当前目录下的所有文件夹以及文件的绝对路径(当然也可以是相对路径,由输入的路径决定),下面的函数接口可以改装为单输出文件或者文件夹的接口,这是一个大方面的总接口。 ...
    99+
    2024-04-02
  • linux 查看文件夹下的文件个数(当前目录的文件数)
    linux 查看文件夹下的文件个数(当前目录的文件数) 查看文件夹下的文件个数(当前目录的文件数) ls -l |grep "^-" | wc -l 说明: ls -l : 长列表输出该目录...
    99+
    2023-09-07
    linux 运维 服务器
  • linux 下用python 遍历文件夹
          我们需要遍历一个文件夹下面的所有 文件名,下面介绍下在Python中使用os.walk(路径)可以遍历某路径下的所有文件夹及文件。    具体方法是for <路径名变量>, <文件夹名列表>, <文...
    99+
    2023-01-31
    遍历 文件夹 linux
  • Java中删除文件或文件夹的方法有哪些
    本篇内容介绍了“Java中删除文件或文件夹的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!删除文件或文件夹的四种基础方法下面的四个...
    99+
    2023-07-06
  • c++下使用windows api遍历指定文件夹及其子文件夹中的文件
    以下代码在vs2008中测试通过,利用FindFirstFile,FindNextFile函数遍历了我电脑上全路径为“C:\\Users\\v_tianboli\\Desktop\\...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作