Python 3.x 结束批处理文件交互以禁用Python输出重定向
我正在从事一个Python项目(个人,非发行版),以修改Windows10中的文件名。我使用批处理文件作为拖放的目标 批处理文件:Python 3.x 结束批处理文件交互以禁用Python输出重定向,python-3.x,batch-file,windows-10,Python 3.x,Batch File,Windows 10,我正在从事一个Python项目(个人,非发行版),以修改Windows10中的文件名。我使用批处理文件作为拖放的目标 批处理文件: @echo off python "C:\path\to\PythonProjects\GetFnDragDrop.py" %* pause GetFnDragDrop.py(演示脚本): 批处理文件启动GetFnDragDrop.py,并根据需要在脚本中捕获文件名。此时,我已完成批处理文件 是否有任何方法可以结束脚本与批处
@echo off
python "C:\path\to\PythonProjects\GetFnDragDrop.py" %*
pause
GetFnDragDrop.py(演示脚本):
批处理文件启动GetFnDragDrop.py,并根据需要在脚本中捕获文件名。此时,我已完成批处理文件
是否有任何方法可以结束脚本与批处理文件/命令提示符之间的交互,以便我可以在PyCharm中的Python终端而不是CMD窗口中打印和获取错误消息?,同时我正在处理脚本,让打印语句和错误消息出现在单独的CMD窗口中而不是PyCharm中的终端中是很烦人的
我尝试从批处理文件中删除“暂停”并向其添加“退出”,但Python打印语句和错误消息仍然指向CMD窗口
任何建议都将不胜感激。您到底为什么要使用批处理文件?我确信有一种方法可以将项目拖放到Python脚本中…
start”“Python”C:\path\to\PythonProjects\GetFnDragDrop.py“%*
我将再次尝试更新我的问题,以澄清我试图完成的任务。谢谢@Gerhard。虽然它阻止了输出到CMD窗口,但它仍然没有发送到PyCharm中的终端。让我猜猜,它只是闪烁了一个终端窗口?
import sys
import os
class Video_Play(object):
def __init__(self, path):
self.path = path
def play(self):
from os import startfile
startfile(self.path)
def get_fn_drag_drop():
file_paths = sys.argv[1:]
return file_paths
file_paths = get_fn_drag_drop()
for fname in file_paths:
file_directory = os.path.dirname(fname)
file_name, file_ext = os.path.splitext(os.path.basename(fname))
fname_new = file_directory + '\\' + file_name + ' -1-' + file_ext
os.rename(fname, fname_new)
movie = Video_Play(fname_new)
movie.play()