gpt4 book ai didi

python - 构造主要方法

转载 作者:行者123 更新时间:2023-12-01 09:16:59 26 4
gpt4 key购买 nike

我有一个 python 脚本,可以做 3 件事:

  1. 检查目录中是否存在文件
  2. 将特定文件从一个目录复制到另一个目录,并且
  3. 执行另一个Python脚本。

现在,如果我运行脚本,它会运行所有 3 个函数,无论文件是否存在于测试目录中。

我想要它做的是检查文件是否存在。如果是,则复制它,复制后执行另一个脚本。我很难找到一种简单的方法将它们连接在一起。这是我的脚本:

import os
import os.path
from os import path
import shutil


def check_file():
file_exists = False
for deploy_file in os.listdir("C:\\test1\\test.txt"):
if deploy_file.startswith("test"):
file_exists = True
else:
exit(1)
print file_exists


def copy_file():
src = "C:\\test1\\"
dst = "C:\\test2\\"

files = [i for i in os.listdir(src) if i.startswith("test") and path.isfile(path.join(src, i))]
print files
for f in files:
shutil.copy(path.join(src, f), dst)


def run_script():
os.system("pathofscript") # for testing its just a script that prints "hello world"


def main():
check_file()
copy_file()
run_script()


main()

因此,按原样运行此命令,输出将是:

True
['test.txt']
"hello world"

如何编写我的 main() 方法来完成我想要做的事情?

最佳答案

您可以使用 if 语句验证文件是否存在,然后运行其他两个函数。您必须更新 check_file() 以返回 True 或 False

def check_file():
file_exists = False
for deploy_file in os.listdir("C:\\test1\\test.txt"):
if deploy_file.startswith("test"):
file_exists = True
else:
file_exists = False
return file_exists

然后你可以使用它作为你的主要功能

def main():
if check_file():
copy_file()
run_script()
else:
exit(1)

关于python - 构造主要方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51161676/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com