免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3339 | 回复: 3

同样写#!/usr/local/bin/python一个代码可以正确执行,一个不行 [复制链接]

论坛徽章:
0
发表于 2018-04-18 16:01 |显示全部楼层
可以正确执行的代码
#!/usr/local/bin/python
print  "sss"

./print.py
sss

另外一份代码
#!/usr/local/bin/python
def  binary_search(list,item):
low = 0
high = len(list)-1
   
while low <= high:
  mid = (low + high) / 2
  guess = list[mid]
  if guess == item:
   return  mid
        
  if guess > item:
   high = mid -1
  else:
   low = mid + 1   
return None
   
my_list = [1,3,5,7,9]
print binary_search(my_list,3)
print binary_search(my_list,-1)

用python执行ok
python  ./search.py
1
None
直接用当可执行文件执行,发现不行

python]$ ./search.py
-bash: ./search.py: /usr/local/bin/python^M: bad interpreter: No such file or directory


一开始怀疑格式问题,也用dos2unix转过格式,另外一开始用4个空格作为分界符,后来因为这个问题改成了tab键,发现问题还是存在,百思不得其解?
因为以前也这么写过,貌似没有问题,不知道今天怎么会遇到这个问题,求大神指点



论坛徽章:
0
发表于 2018-04-18 20:32 |显示全部楼层
hegc@DESKTOP-0E940NO /cygdrive/e/python/faceswap
$ ./search.py
bash: ./search.py: /usr/local/bin/python: 解释器错误: No such file or directory

hegc@DESKTOP-0E940NO /cygdrive/e/python/faceswap
$ which python
/usr/bin/python

hegc@DESKTOP-0E940NO /cygdrive/e/python/faceswap
$ which python
/usr/bin/python

hegc@DESKTOP-0E940NO /cygdrive/e/python/faceswap
$ ./search.py
1
None

解释器的位置对么?

论坛徽章:
0
发表于 2018-04-19 14:00 |显示全部楼层
本帖最后由 linkejin 于 2018-04-19 14:01 编辑

回复 2# dahe_1984


对的,which命令我用过了,因为我一开始写的/usr/bin/python,报的问题更奇怪。而且我也用/usr/local/bin/python执行过,也是可以的。额,如果怀疑解释器,那么一开始那个
print.py就应该有问题。

which的结果如下

python]$ which python
/usr/local/bin/python


额,我以前服务器上,用的python是2.7.6好像可以的,现在这个版本好像是2.6.6,总之执行起来就是怪怪的……,额,我换服务器用了,之前在windows执行都没这么多幺蛾子。

论坛徽章:
0
发表于 2018-04-19 14:39 |显示全部楼层
#!/usr/local/bin/python

第一行写解释器的位置,which出什么就写什么。找不到当然报错了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP