123lqqq 发表于 2023-3-29 15:36:55

用相对路径能找到bat文件但是运行不了

def Button3Click(self,event):
   
import subprocess
import os
      
if __name__ == '__main__':
    bat_path = r'..\examples\inletoutlet\inlet+dem2D\wCaseIn_win64_CPU.bat'
    subprocess.Popen(bat_path, creationflags=subprocess.CREATE_NEW_CONSOLE, cwd=os.path.dirname(bat_path))
   

代码是这样的,能找到文件但是不运行bat,当我改成绝对路径的时候没有问题。

isdkz 发表于 2023-3-29 15:40:49

你确定能找到文件?你是在 spyder 中运行的?

123lqqq 发表于 2023-3-29 15:47:04

isdkz 发表于 2023-3-29 15:40
你确定能找到文件?你是在 spyder 中运行的?

能找到哇,对的呢我还是用spyder运行的,因为同一个目录下面的xml文件用相对路径能成功改节点

isdkz 发表于 2023-3-29 15:48:59

123lqqq 发表于 2023-3-29 15:47
能找到哇,对的呢我还是用spyder运行的,因为同一个目录下面的xml文件用相对路径能成功改节点

你说的不运行 bat 是什么判断依据的,有没有什么报错信息?

123lqqq 发表于 2023-3-29 15:51:39

imgse.com/i/ppcf4l4
没有报错,bat运行的话结果文件夹会更新,一般30s就算完了。这个就是还保留上次算的结果文件

123lqqq 发表于 2023-3-29 15:53:13

isdkz 发表于 2023-3-29 15:48
你说的不运行 bat 是什么判断依据的,有没有什么报错信息?


imgse.com/i/ppcf4l4
没有报错,bat运行的话结果文件夹会更新,一般30s就算完了。这个就是还保留上次算的结果文件

isdkz 发表于 2023-3-29 15:57:51

123lqqq 发表于 2023-3-29 15:53
imgse.com/i/ppcf4l4
没有报错,bat运行的话结果文件夹会更新,一般30s就算完了。这个就是还保留上次 ...

可能也是 spyder 的问题,你先换成我之前跟你说的方法看看

https://fishc.com.cn/forum.php?mod=redirect&goto=findpost&ptid=225423&pid=6172870

试试这个帖子的第二种方法运行来看看

123lqqq 发表于 2023-3-29 16:01:21

isdkz 发表于 2023-3-29 15:57
可能也是 spyder 的问题,你先换成我之前跟你说的方法看看

https://fishc.com.cn/forum.php?mod=redir ...

这个我设置过啦{:10_319:}

123lqqq 发表于 2023-3-29 16:04:03

isdkz 发表于 2023-3-29 15:57
可能也是 spyder 的问题,你先换成我之前跟你说的方法看看

https://fishc.com.cn/forum.php?mod=redir ...

我再试试第三种看看

isdkz 发表于 2023-3-29 16:05:01

123lqqq 发表于 2023-3-29 16:04
我再试试第三种看看

不用试了,第二种不行,第三种也不行的,我再想想会是什么原因

isdkz 发表于 2023-3-29 16:07:31

你的代码里面看你好像是写在函数里面的,你有调用那个函数了吗?

123lqqq 发表于 2023-3-29 16:15:26

isdkz 发表于 2023-3-29 16:07
你的代码里面看你好像是写在函数里面的,你有调用那个函数了吗?

imgse.com/i/ppc46iV
好像是找不到bat文件,可是相对路径没写错的哇

isdkz 发表于 2023-3-29 16:21:42

123lqqq 发表于 2023-3-29 16:15
imgse.com/i/ppc46iV
好像是找不到bat文件,可是相对路径没写错的哇

应该是你的 bat 脚本需要找某一个文件,但是根据当前路径是找不到的

isdkz 发表于 2023-3-29 16:22:35

123lqqq 发表于 2023-3-29 16:15
imgse.com/i/ppc46iV
好像是找不到bat文件,可是相对路径没写错的哇

你用第二种方法没有弹出窗口是吧?

123lqqq 发表于 2023-3-29 16:24:03

isdkz 发表于 2023-3-29 16:22
你用第二种方法没有弹出窗口是吧?

嗯嗯是的

123lqqq 发表于 2023-3-29 16:24:38

isdkz 发表于 2023-3-29 16:21
应该是你的 bat 脚本需要找某一个文件,但是根据当前路径是找不到的

嗷嗷嗷

wp231957 发表于 2023-3-29 16:30:57

123lqqq 发表于 2023-3-29 16:24
嗷嗷嗷

检查一下bat文档,看看有没有ISDKZ版主说的那种情况

123lqqq 发表于 2023-3-29 16:51:03

isdkz 发表于 2023-3-29 16:21
应该是你的 bat 脚本需要找某一个文件,但是根据当前路径是找不到的

我把python程序和bat放在同一文件夹下,用相对路径还是找不到{:10_286:}

123lqqq 发表于 2023-3-29 16:51:23

wp231957 发表于 2023-3-29 16:30
检查一下bat文档,看看有没有ISDKZ版主说的那种情况

好的哦

isdkz 发表于 2023-3-29 16:52:17

123lqqq 发表于 2023-3-29 16:51
我把python程序和bat放在同一文件夹下,用相对路径还是找不到

就是你的 bat 里面要用到一个 python 程序是吧,你直接双击那个 bat 能运行吗?
页: [1] 2
查看完整版本: 用相对路径能找到bat文件但是运行不了