Я пытаюсь записать файл в каталог на Python.Этот файл также отредактирован другой программой (MT4).Файл будет успешно записан, когда программа MT4 не выполняет никаких действий в этом каталоге.Однако всякий раз, когда запускается программа MT4, программа python выдает ошибку.
Вот ошибка Python:
PermissionError: [Errno 13] Permission denied: 'AppData\\Roaming\\MetaQuotes\\Terminal\\94DDB309C90B408373EFC53AC730F336\\MQL4\\Files\\modelout.txt'
Программа Python находится здесь:
from keras.models import load_model
import numpy
import os, time
import ctypes, sys
i = 0
global lastmoddate
lastmoddate = 5
def is_admin():
try:
return ctypes.windll.shell32.IsUserAnAdmin()
except:
return False
if is_admin():
while i > -1:
newmoddate = os.stat("AppData\Roaming\MetaQuotes\Terminal\94DDB309C90B408373EFC53AC730F336\MQL4\Files\indicatorout.csv")[8]
if newmoddate != lastmoddate:
model = load_model('tried2.h5')
data = numpy.loadtxt("AppData\Roaming\MetaQuotes\Terminal\94DDB309C90B408373EFC53AC730F336\MQL4\Files\indicatorout.csv", delimiter=",")
data = numpy.array([data])
print(data)
outdata = model.predict(data)
print(outdata)
final = numpy.around(outdata, 0)
numpy.savetxt("AppData\Roaming\MetaQuotes\Terminal\94DDB309C90B408373EFC53AC730F336\MQL4\Files\modelout.txt", final)
time.sleep(15)
lastmoddate = os.stat("AppData\Roaming\MetaQuotes\Terminal\94DDB309C90B408373EFC53AC730F336\MQL4\Files\indicatorout.csv")[8]
else:
time.sleep(5)
else:
# Re-run the program with admin rights
ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1)
Я использовал решение, чтобы получить администратора от другого поста переполнения стека.Тем не менее, меня никогда не спрашивают, что, я думаю, означает, что python уже работает от имени администратора
Если кто-нибудь может дать какой-либо совет о том, как исправить эту ошибку, это будет с благодарностью.Спасибо!