您当前的位置:首页 > 计算机 > 编程开发 > Python

打开程序的一个小程序

时间:10-30来源:作者:点击数:
城东书院 www.cdsy.xyz

自我想象,有预先准备的程序1,2及和其对应的txt文件1,2;txt内写的是exe程序的路径,只需要修改txt内程序路径即可更换所启动的程序。

就是下图箭头所示的那俩

用python的Fitten Code插件。

(本人不懂代码,不会写程序!)

用Fitten Code写的另外一个程序

用Fitten Code Chat 自动写了个修改CUE文件的python代码

(这是第一次提问)打开程序目录下,和程序同名的txt文件,读取第一行,并启动txt文件内记录的exe程序
 
 
Fitten Code
 
您可以使用以下 Python 代码来实现这个功能。请确保您已经安装了 Python,并且将代码放在与目标 .txt 文件和 .exe 文件相同的目录下。
 
import os
import subprocess
 
# 获取当前程序的名称(不带扩展名)
program_name = os.path.splitext(os.path.basename(__file__))[0]
 
# 构建 txt 文件的路径
txt_file_path = f"{program_name}.txt"
 
# 读取 txt 文件的第一行
with open(txt_file_path, 'r') as file:
    exe_name = file.readline().strip()  # 去掉换行符
 
# 启动 exe 程序
exe_path = os.path.join(os.path.dirname(__file__), exe_name)
subprocess.run([exe_path])
CopyInsert
代码解释:
os.path.splitext(os.path.basename(__file__)) 获取当前脚本的名称。
构建目标 .txt 文件的路径。
使用 with open 打开并读取 .txt 文件的第一行。
使用 subprocess.run 启动读取到的 .exe 文件。
请注意:
 
确保 .txt 文件中仅包含可执行文件的名称(例如 program.exe)。
确保 .exe 文件在同一目录下存在。
使用该代码时,请确保遵循安全原则,并确认要执行的 .exe 文件是安全和可信的。
 
 
(发现读取格式有问题,这是第二次提问)
能读取ANSI和UTF-8格式的txt
 
 
Fitten Code
 
可以使用 Python 的 open 函数来读取不同编码格式的文本文件。下面是修改后的代码,它可以处理 ANSI 和 UTF-8 编码格式的 .txt 文件:
 
import os
import subprocess
 
def read_first_line(file_path):
    """读取文件的第一行,支持 ANSI 和 UTF-8 编码。"""
    try:
        with open(file_path, 'r', encoding='utf-8') as file:
            return file.readline().strip()
    except UnicodeDecodeError:
        # 如果是 UTF-8 解码失败,则尝试 ANSI 编码
        with open(file_path, 'r', encoding='gbk') as file:  # 在中国常用的 ANSI 编码是 GBK
            return file.readline().strip()
 
# 获取当前程序的名称(不带扩展名)
program_name = os.path.splitext(os.path.basename(__file__))[0]
 
# 构建 txt 文件的路径
txt_file_path = f"{program_name}.txt"
 
# 读取 txt 文件的第一行
exe_name = read_first_line(txt_file_path)
 
# 启动 exe 程序
exe_path = os.path.join(os.path.dirname(__file__), exe_name)
subprocess.run([exe_path])
CopyInsert
代码说明:
read_first_line 函数尝试以 UTF-8 编码打开并读取文件。如果失败,则捕获UnicodeDecodeError,并以 GBK 编码(常见的 ANSI 编码)重试。
其余部分与之前的代码相同,负责获取程序名称和启动 .exe 文件。
注意事项:
请确保 .txt 文件中仅包含可执行文件的名称(例如 program.exe)。
该代码应在与 .txt 和 .exe 文件相同的目录下运行。
确认要执行的 .exe 文件安全无病毒。

已经打包好的程序,有需要的自取

https://wwuv.lanzouw.com/b02ihhkmfi

密码:ckm0

代码:

import os
import subprocess
 
def read_first_line(file_path):
    """读取文件的第一行,支持 ANSI 和 UTF-8 编码。"""
    try:
        with open(file_path, 'r', encoding='utf-8') as file:
            return file.readline().strip()
    except UnicodeDecodeError:
        # 如果是 UTF-8 解码失败,则尝试 ANSI 编码
        with open(file_path, 'r', encoding='gbk') as file:  # 在中国常用的 ANSI 编码是 GBK
            return file.readline().strip()
 
# 获取当前程序的名称(不带扩展名)
program_name = os.path.splitext(os.path.basename(__file__))[0]
 
# 构建 txt 文件的路径
txt_file_path = f"{program_name}.txt"
 
# 读取 txt 文件的第一行
exe_name = read_first_line(txt_file_path)
 
# 启动 exe 程序
exe_path = os.path.join(os.path.dirname(__file__), exe_name)
subprocess.run([exe_path])

 

城东书院 www.cdsy.xyz
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐