Python从.BAT运行不会返回任何结果
Python 3.7.3/Win 10 BAT文件启动并记录其开始和结束时间,包括Python脚本不运行,不会产生任何结果。不会创建或更新Dates.txt,也不会呈现打印语句。没有返回错误,并且我的CMD窗口在暂停时保持不变 我已经尝试了所有我能找到的关于从蝙蝠发射PY的变体,但没有乐趣。从.BAT中调用.PY似乎没有那么多选项。我已经试着运行BAT和Python调用,在常规和提升(admin)命令提示下,没有改变 get_dates.bat:Python从.BAT运行不会返回任何结果,python,anaconda,Python,Anaconda,Python 3.7.3/Win 10 BAT文件启动并记录其开始和结束时间,包括Python脚本不运行,不会产生任何结果。不会创建或更新Dates.txt,也不会呈现打印语句。没有返回错误,并且我的CMD窗口在暂停时保持不变 我已经尝试了所有我能找到的关于从蝙蝠发射PY的变体,但没有乐趣。从.BAT中调用.PY似乎没有那么多选项。我已经试着运行BAT和Python调用,在常规和提升(admin)命令提示下,没有改变 get_dates.bat: SET logfile="J:\My D
SET logfile="J:\My Drive\_Ongoing\Python\250ok_v20\batch.log"
@echo Starting Script at %date% %time% >> %logfile%
"C:\ProgramData\Anaconda3\pythonw.exe" "J:\My
Drive\_Ongoing\Python\250ok_v20\get_dates.py"
pause
@echo Finished at %date% %time% >> %logfile%
获取_dates.py:
从dateutil.relativedelta导入relativedelta
从日期时间导入日期时间
file=“J:/My Drive/\u continuousing/Python/250ok\u v20/date.txt”
def get_dates():
今天=日期。今天()
d=今天-相对寿命(月=1)
日期(d.年,d.月,1)
startdate=(日期(今天.年,今天.月,1)——
相对寿命(月=1))
enddate=(日期(今天.年,今天.月,1)-相对延迟(天=1))
startdate=str(startdate)
enddate=str(enddate)
返回(开始日期、结束日期)
(startdate,enddate)=获取日期()
以open(file,'w')作为_文件:
_文件.write(startdate+'\n')
_文件.write(enddate+'\n')
打印(起始日期)
打印(结束日期)
PY脚本在Spyder中运行良好,dates.txt文件使用正确的值创建。
如果我跑步:
"J:\My Drive\_Ongoing\Python\250ok_v20\test.bat"
在CMD中,batch.log
添加了开始/结束行,但是dates.txt
没有创建/刷新
如果我跑步:
"J:\My Drive\_Ongoing\Python\250ok_v20\test.bat"
"C:\ProgramData\Anaconda3\pythonw.exe" "J:\My Drive\_Ongoing\Python\250ok_v20\get_dates.py"
似乎什么也没发生,没有任何痕迹。
这和水蟒有关吗?
我之前安装了另一个版本的Python,在安装Spyder/Anaconda
之前可能没有删除它,这会导致问题吗
谢谢您的时间。这是一个双重问题:
- 首先,该脚本似乎在Spyder中工作,但在其他任何地方都不起作用。看起来“C:\ProgramData\Anaconda3\pythonw.exe”可能是一个打字错误-典型的安装只是“python.exe”
- 其次,您需要从datetime导入date