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

如何从另一个文件运行python文件,然后让新文件重新启动第一个文件?

从另一个文件运行Python文件并重新启动第一个文件,可以使用Python的subprocess模块来实现。subprocess模块允许你在Python脚本中启动其他程序,并与其进行交互。

以下是一个示例代码,演示如何从一个Python文件中运行另一个Python文件,并在第二个文件执行完毕后重新启动第一个文件:

代码语言:txt
复制
import subprocess
import sys

def restart_first_file():
    # 获取第一个文件的文件名
    first_file = sys.argv[0]

    # 启动第二个文件
    subprocess.call(["python", "second_file.py"])

    # 重新启动第一个文件
    subprocess.call(["python", first_file])

if __name__ == "__main__":
    restart_first_file()

在上述代码中,我们首先使用sys.argv[0]获取当前运行的Python文件的文件名,然后使用subprocess.call()函数来启动第二个Python文件(假设为second_file.py)。当第二个文件执行完毕后,再次使用subprocess.call()函数重新启动第一个文件。

请注意,上述代码中的文件名和文件路径需要根据实际情况进行修改。此外,你还可以根据需要在subprocess.call()函数中添加其他参数,以满足特定的需求。

这是一个简单的示例,你可以根据实际情况进行修改和扩展。希望对你有帮助!

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

相关·内容

python删除文件_python运行另一个py文件

python 删除文件夹和文件 目录 一、三种删除方法 二、删除失败情况 PermissionError: [WinError 5] 拒绝访问 2.1 给python权限 2.2 删除改为更名...一、三种删除方法 python删除文件文件夹主要用到os模块和shutil模块,针对文件夹和文件的删除,有几种情况,直接上代码: 文件删除相关的所有操作,基本全部覆盖 如果确实对你有帮助,右侧打赏一分鼓励一下吧...,嘿咻嘿咻 import shutil import os from pathlib import Path # 第一种:删除一个文件夹,无论里面是否有文件文件夹 # (不支持文件文件夹不存在会报错...print(dirs) # root下一级文件夹名称列表,如 ['文件夹1','文件夹2'] print(files) # root下文件名列表,如 ['文件1','文件2'] # 第一步:删除文件...2.1 给python权限 这是因为没有权限,可以参考>>解决办法<< 2.2 删除改为更名 我感觉给与权限还需要修改这修改那的很麻烦,直接放弃删除操作,替换为更改文件夹名字操作: import random

2.1K10
  • Pycharm里如何设置多Python文件并行运行

    一、前言 相信使用Pycharm的粉丝们肯定有和我一样的想法,就是当你有5份代码时,手动一个个的运行时,正常的情况下,pycharm的输出控制台里,不是会单独新建5个输出框嘛,逐一对应每份代码。...有时候在跑一个机器学习或者网络爬虫或者其他长时间运行Python程序的时候,你是不是一直在等待程序跑完?...其实你自己也知道,这个等待的时间,你可以去开发另外一个Python程序,但是可能你又不知道如何实现多开。这一篇文章,带大家一起学习下,Pycharm程序多开的方法。...前几天在Python白银交流群【巭孬】分享了一个Pycharm同一时间同时运行多个Python文件的方法,这里拿出来给大家分享下。...二、实现过程 设置的方法如下: 如果你是下图英文界面这样的,就选择右上角的【Allow parallel run】即可,即代表允许多个实例: 就先点击Templates,然后找到Python文件

    1K10

    Python写的csv文件如何 Excel 双击打开不乱码?

    我们常常需要在 Python 中输出 CSV 文件,但你可能会发现,这些输出的 CSV文件,不能双击使用 Excel 打开,否则中文会变成乱码。...实际上当你双击打开 CSV 的时候,Excel会检查文件第一个字符,如果这个字符是 BOM,那么他就知道应该使用 UTF-8编码方式来打开这个文件。...难道此时,需要先用普通方式读取 csv 文件,移除第一个 BOM 字符,然后再传给 CSV 模块吗?这未免太过麻烦。...好在 Python 只带了处理 BOM的编码方式 utf-8-sig,无论是写文件还是读文件,只要使用这个编码方式,Python 在写文件的时候会自动加上 BOM,在读文件的时候会自动删除 BOM。...如果要使用 Python 的 CSV 模块读取文件,也非常简单,如下图所示: ? 读取出来的内容直接使用,BOM 已经被 Python 自动移除了。

    4.6K21

    独家 | 手把手教你如何PythonPDF文件中导出数据(附链接)

    本文介绍了在提取出想要的数据之后,如何将数据导出成其他格式的方法。 有很多时候你会想用PythonPDF中提取数据,然后将其导出成其他格式。...不幸的是,并没有多少Python包可以很好的执行这部分工作。在这篇贴子中,我们将探讨多个不同的Python包,并学习如何PDF中提取某些图片。...尽管在Python中没有一个完整的解决方案,你还是应该能够运用这里的技能开始上手。提取出想要的数据之后,我们还将研究如何将数据导出成其他格式。 让我们如何提取文本开始学起!...无论如何,我认为我们可以大致照以上代码行事。 我们做的第一件事就是创建一个资源管理器的实例。然后通过Python的输入输出(io)模块创建一个似文件对象。...正如你能看到的,slate分析一个PDF文件,你只需要引进slate然后创建一个它的PDF类的实例。PDF类其实是Python内置类list的一个子类,所以它仅是返回了一列/可遍历的文本页。

    5.4K30

    entr:文件更改时重新运行构建

    总结在其头部:entr 是一个命令行工具,当每次更改一组指定文件中的任何一个时,都能运行一个任意命令。...重启服务器(entr -r) 但是如果你正在运行服务器,并且每次都需要重新启动服务器怎么办?...如果你传递 -r,那么 entr 会帮你的 git ls-files | entr -r python my-server.py 清除屏幕(entr -c) 另一个简洁的标志是 -c,它你可以在重新运行命令之前清除屏幕...每次添加新文件时重启:entr -d git ls-files 的另一个问题是有时候我添加一个新文件,当然它还没有在 git 中。entr 为此提供了一个很好的功能。...如果你传递 -d,那么如果你在 entr 跟踪的任何目录中添加新文件,它就会退出。

    59420

    如何将机器学习的模型部署到NET环境中?

    首先,创建一个新文件,并将其称为titanic_app.py(或任何你想要的名字)。导入并初始化Flask应用程序,然后在底部启动服务器。在中间留出空间,以便稍后在中间添加模型和路线。...此操作将在禁用该文件夹的Python处理的静态文件夹中创建另一个web.config。该配置将静态文件的请求发送到默认Web服务器,而不是使用Python应用程序。...·保存文件然后右键单击解决方案资源管理器中的项目(确保你还没有在本地运行),然后选择发布。...为此,在Kudu诊断控制台中,导航到D: home Python27中的Python文件夹,然后按照Kudu控制台部分中所述运行以下命令: D: home Python27> python -m pip...install --upgrade -r /home/site/wwwroot/requirements.txt ·通过按下重新启动按钮来安装新软件包之后,在Azure门户中重新启动App Service

    1.9K90

    如何在Debian 8上用mod_proxy将Apache设置为反向代理

    另一个会说Howdy world!。 注意:在非测试设置中,后端服务器通常都返回相同类型的内容。但是,特别是对于此测试,两台服务器返回不同的消息可以很容易地检查负载平衡机制是否同时使用这两种消息。...$ sudo pip3 install flask 现在已经安装了所有必需的组件,创建一个新文件,该文件将包含当前用户主目录中第一个后端服务器的代码。...$ nano ~/backend2.py 更改信息Hello world!到 Howdy world!,然后保存并关闭该文件。...在这种情况下,使用环境变量确保该设置仅适用于正在运行的命令,之后将不再保持可用,因为我们将以相同的方式传递另一个文件名来告诉flask命令启动第二个服务器。...下面的第一个示例说明了如何将此块配置为针对单个后端服务器的反向代理,第二个示例为多个后端服务器设置负载平衡的反向代理。

    1.1K30

    如何在CentOS 7上用mod_proxy将Apache设置为反向代理

    另一个会输出Howdy world!。 注意:在非测试设置中,后端服务器通常都会返回相同类型的内容。但是,此测试中,两台服务器返回不同的消息可以很容易地检查负载均衡机制是否同时使用这两种消息。...$ sudo pip3.5 install flask 现在已经安装了所有必需的组件,首先创建一个新文件,该文件将包含当前用户主目录中第一个后端服务器的代码。...除了返回不同的文本行之外,第二个后端服务器与第一个后端服务器完全相同,因此首先复制第一个文件。 $ cp ~/backend1.py ~/backend2.py 打开新复制的文件。...,然后保存并关闭该文件。...在这种情况下,使用环境变量确保该设置仅适用于正在运行的命令,之后将不再保持可用,因为我们将以相同的方式传递另一个文件名来告诉flask命令启动第二个服务器。

    2.3K30

    用scikit-learn开始机器学习

    在此过程中,您将学习如何: 在macOS上安装流行的Python机器学习包。 创建预测机器学习模型。 将这些模型集成到您自己的iOS应用程序中。 入门 下载入门项目,然后构建并运行它。 ?...,导航到您选择的用户目录,然后创建一个名为Beginning-Machine-Learning的新文件夹。 ?...python 没有安装 coremltools。 在终端中,Beginning-Machine-Learning目录运行以下命令: ....然后,您新文件夹启动了Jupyter Notebook Server。 您的默认浏览器应该打开Jupyter Notebook页面。...训练和验证支持向量机模型 将另一个导入添加到第一个单元格并重新运行它: import sklearn.svm as svm 然后,将以下每个代码块添加到单元格中并运行它们: svr = svm.LinearSVR

    1.7K10

    Python 帮运营妹纸快速搞定 Excel 文档

    但是,VBA 有点笨拙,这就是为什么要学习如何将 Excel 与 Python 结合使用。 现在让我们了解如何使用 Python 处理 Microsoft Excel 电子表格!...第二个示例显示了如何设置工作表的标题以及在哪个索引处插入工作表。参数index = 1表示该工作表将在第一个现有工作表之后添加,因为它们的索引0开始。...保存文件后,可以通过打开 Excel 或另一个与 Excel 兼容的应用程序来验证是否存在多个工作表。 在完成自动工作表创建过程之后,突然有了太多的工作表,因此让我们来删除一些工作表。...列的索引1开始,而工作表的索引0开始。这有效地将A列中的所有单元格移到B列。然后第2行开始插入两个新行。 现在您知道了如何插入列和行,是时候来了解如何删除它们了。...要了解如何删除列或行,请创建一个名为delete_demo.py的新文件并添加以下代码: # delete_demo.py from openpyxl import Workbook def deleting_cols_rows

    4.5K20

    Django学习搭建第一个项目(3)

    manage.py: 一个你用各种方式管理 Django 项目的命令行工具。 里面一层的 mysite/ 目录包含你的项目,它是一个纯 Python 包。...mysite/__init__.py:一个空文件,告诉 Python 这个目录应该被认为是一个 Python 包。 mysite/settings.py:Django 项目的配置文件。...运行下面的命令: python manage.py runserver ?...会自动重新加载的服务器 runserver 用于开发的服务器在需要的情况下会对每一次的访问请求重新载入一遍 Python 代码。所以你不需要为了修改的代码生效而频繁的重新启动服务器。...然而,一些动作,比如添加新文件,将不会触发自动重新加载,这时你得自己手动重启服务器。 怎么停止我们的项目呢? 在我们启动的界面下,使用 Ctrl + C 即可。 ? 今天就这样了!

    48110

    如何在Ubuntu Server 18.04上安装fail2ban

    IP地址发现尝试的泄密时,fail2ban然后阻止IP地址(通过向iptables添加新链)获得进入(或试图进一步攻击)服务器。...然后,我将向您展示如何添加一个监控器来监视失败的SSH登录尝试。 安装 安装fail2ban很简单。登录到您的Ubuntu服务器并更新/升级。...请注意,如果在此过程中升级内核,则必须重新启动服务器(因此在重新启动可行时运行此服务器)。...在/etc fail2ban目录中,您将找到jail.conf文件。不要编辑此文件。相反,我们将创建一个新文件jail.local,它将覆盖jail.conf中的任何类似设置。...按[Ctrl] + [c]退出,然后尝试SSH回到服务器。您不应再能够您使用的IP地址SSH到该服务器。

    63330

    django 3.0教程系列(一)请求与响应

    如果你想知道这个文件如何工作的,请查看 Django 配置 了解细节。 mysite/urls.py:Django 项目的 URL 声明,就像你网站的“目录”。...如果你的当前目录不是外层的 mysite 目录的话,请切换到此目录,然后运行下面的命令: python manage.py runserver 你应该会看到如下输出: Performing system...所以你不需要为了修改的代码生效而频繁的重新启动服务器。然而,一些动作,比如添加新文件,将不会触发自动重新加载,这时你得自己手动重启服务器。...请确定你现在处于 manage.py 所在的目录下,然后运行这行命令来创建一个应用: python manage.py startapp polls 这将会创建一个 polls 目录,它的目录结构大致如下...编写第一个视图 让我们开始编写第一个视图吧。

    1.2K50

    如何处理Express和Node.js应用程序中的错误

    在这篇文章中,我将解释如何处理Express中的错误。...; }); app.listen(port, () => console.log(`App listening on port: ${port}`)); 创建一个新文件夹,npm init -y,然后创建...当请求进入Web服务器时,URI通过路由表运行,并且使用表中的第一个匹配项-即使存在多个匹配项。 如果找不到匹配项,则Express将显示错误。...处理任何类型的错误 如果我们只想处理请求到不存在路径的错误,则上一节中的解决方案有效。但是它不能处理我们的应用程序中可能发生的其他错误,并且是处理错误的不完整方法。它只能解决一半的问题。...; }) 将此代码放在app.listen之前和第一个app.use之后,然后重新启动服务器,然后访问localhost:3000。现在的响应是: Something Broke!

    5.6K10
    领券