乌班图版本:12.04 Python版本:2.7.3在
我有剧本(对虾.py)开始是:
#! /usr/bin/env python
from random import choice
import os
from webbrowser import open_new
import urllib
print("!")
def getsource(url): page=urllib.urlopen(url);sourcecodey=page.read();page.close;return sourcecodey
#etc
当我在终端运行时:
^{pr2}$当我把第一行改成#!/usr/bin/python
$ which python
/usr/bin/python
$ ./prawn.py
bash: ./prawn.py: /usr/bin/python^M: bad interpreter: No such file or directory
但是当我使用“python”运行它时对虾.py“,它起作用了。在
我怎么解决这个问题?在
您的shebang行中似乎有一个
^M
,删除第一行的所有内容,然后手动重新键入(#!/usr/bin/env python
)。在本质上是相同的错误:shebang行以回车符
\r
/^M
结尾。env
打印输出(它打印python
,它执行回车并在: No such file or directory
行的开头打印。在如果直接调用
python
,则找不到python^M
。在对于这两种情况,请删除这个额外的字符;一旦您使其工作,带有
env
的版本会更好。在^M
表示您正在使用DOS行结尾。改用UNIX行尾。您可以尝试使用sed
将文件从DOS行结尾转换为UNIX行结尾:转换后的文件将位于
prawn.unix.py
。在相关问题 更多 >
编程相关推荐