Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 尝试除“错误”之外的其他操作;OSError:[ERRNO13]权限被拒绝";并写入日志文件_Python - Fatal编程技术网

Python 尝试除“错误”之外的其他操作;OSError:[ERRNO13]权限被拒绝";并写入日志文件

Python 尝试除“错误”之外的其他操作;OSError:[ERRNO13]权限被拒绝";并写入日志文件,python,Python,运行上述行会在提示符中为我提供OSError:[Errno 13]权限被拒绝,并且它不会被记录。我需要记录此错误,而不是在提示中显示此错误 有什么建议吗 谢谢!我正在使用Python2.6.6您正在尝试删除文件/usr/local/logs/mylog.log,该文件很可能需要sudo权限。因此,以sudopythonscript.py的形式运行脚本,它应该可以正常工作 正如所说,您当前的用户没有删除该文件的权限。您的问题不仅在于删除该文件,还可能是您的脚本没有写入日志文件的权限,这就是它没有被

运行上述行会在提示符中为我提供
OSError:[Errno 13]权限被拒绝
,并且它不会被记录。我需要记录此错误,而不是在提示中显示此错误

有什么建议吗


谢谢!我正在使用Python2.6.6

您正在尝试删除文件
/usr/local/logs/mylog.log
,该文件很可能需要sudo权限。因此,以
sudopythonscript.py
的形式运行脚本,它应该可以正常工作


正如所说,您当前的用户没有删除该文件的权限。

您的问题不仅在于删除该文件,还可能是您的脚本没有写入日志文件的权限,这就是它没有被记录的原因,这就是为什么没有发现
操作错误。
它说“权限被拒绝”它的意思是“拒绝许可”。更改文件访问权限或以其他用户的身份执行脚本。我需要记录该错误,但不知何故,我无法通过“except”捕获错误。任何建议。。。!!!等待我无法重现你的问题。在我的笔记本电脑上,异常按预期处理。我不认为是
os.remove
触发您的
os错误。你想登录到哪里?您可能试图将日志写入您无权写入的位置。请在调用
log.error()
之前立即添加
print
语句。如果您看到它,那么触发您看到的异常的不是
os.remove()
,您必须查看其他地方。不,我有权限写入日志,这也不是问题所在,我的异常处理在这里无效。我应该怎么做。?是的,谢谢,但是任何关于通过except处理此错误并记录它的建议。@onlyvinish之前没有注意到这一点,但不应该是
log.error('error:%s')而不是
log.error('error:%s')%e.message
?我尝试了同样的方法,但仍然没有为此创建日志:(
try:
  os.remove('/usr/local/logs/mylog.log')
except Exception as e:
  log.error('Error: %s') %e.message