OSError: [Errno 8] Exec format error

OSError: [Errno 8] Exec format error
访问 python项目某个.py文件的网页的时候会出现OSError: [Errno 8] Exec format error的问题,一般情况下是由于基于Unix(Linux,Mac OS)系统下的问题。例子如下:

if __name__ == '__main__':
    app.run()
    # app.run(debug=True,host='***.****.**.***', port=****)

Traceback (most recent call last):
  File "/home/bright-wu/****/****.py", line 145, in <module>
    app.run()
  File "/home/bright-wu/.myvirtualenvs/****/local/lib/python2.7/site-packages/flask/app.py", line 944, in run
    run_simple(host, port, self, **options)
  File "/home/bright-wu/.myvirtualenvs/loveyy/local/lib/python2.7/site-packages/werkzeug/serving.py", line 1007, in run_simple
    run_with_reloader(inner, extra_files, reloader_interval, reloader_type)
  File "/home/bright-wu/.myvirtualenvs/loveyy/local/lib/python2.7/site-packages/werkzeug/_reloader.py", line 332, in run_with_reloader
    sys.exit(reloader.restart_with_reloader())
  File "/home/bright-wu/.myvirtualenvs/****/local/lib/python2.7/site-packages/werkzeug/_reloader.py", line 176, in restart_with_reloader
    exit_code = subprocess.call(args, env=new_environ, close_fds=False)
  File "/usr/lib/python2.7/subprocess.py", line 523, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/usr/lib/python2.7/subprocess.py", line 711, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1343, in _execute_child
    raise child_exception
OSError: [Errno 8] Exec format error

问题解决办法
一,chmod +x filedir  filedir是要访问的文件名称,设置了以后文件具有可执行权限才能被web服务器访问。
二,在.py文件的开头写下以下代码

#! /usr/bin/env python
#encoding: utf-8

from flask import Flask,render_template,request,redirect,url_for,session,g

备注:
一般所有的python程序第一行应该为#!行,它可以告诉计算机你想用python来执行这个程序。例如
在windows系统下
#! python3或 #! python

在linux系统下*
#! /usr/bin/env python
#! /usr/bin/ python (如果报其他错误,使用#! /usr/bin/env python试试看)

在OS X下
#! /usr/bin/env python

#encoding: utf-8 预防编码错误SyntaxError: Non-ASCII character ‘\xe5’ in file (python3以下版本)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值