有一位用户将用Windows系统编写的Python脚本移植到了Linux系统上,脚本的功能是查询Freebase开放源码数据库。该用户已经更改了文件的权限并添加了适当的文件头,但是当在Linux命令行中运行脚本时,却遇到了“No Such File or Directory”错误。

2. 解决方案
方法1:检查文件格式
一位遇到同样问题的用户发现,移植后的文件仍然是DOS格式,并且包含一些特殊字符。通过使用dos2unix命令将文件格式转换为Unix格式,问题得到了解决。
方法2:检查Python解释器是否存在
如果Linux系统中缺少/usr/bin/env或python,也会导致“No Such File or Directory”错误。因此,需要检查系统中是否存在这两个文件。
方法3:修改Python解释器路径
如果用户希望使用特定的Python解释器来运行脚本,可以在脚本的第一行添加以下内容:
#!/_output_of_which_python_
其中“output_of_which_python”代表使用which python命令后得到的输出结果。例如,如果使用which python命令得到的结果是“/usr/bin/python3.6”,那么脚本的第一行应该是:
#!/usr/bin/python3.6
以上三种方法都可以解决Python脚本无法正常运行的问题。用户可以根据具体情况选择合适的方法进行解决。
代码示例
#! /usr/bin/env python
# 或者:#!/_output_of_which_python_
import urllib
import string
import json
import sqlite3
# 查询Freebase,查找德克萨斯大学毕业生的结果
query1 = [{
"name": null,
"type": "/people/person",
"!/education/education/student": [{
"!/education/educational_institution/students_graduates": [

文章讲述了如何解决将Windows系统下的Python脚本移植到Linux时遇到的NoSuchFileorDirectory错误,方法包括检查文件格式、确认Python解释器存在以及修改Python解释器路径。给出了具体的代码示例和解决步骤。
7万+

被折叠的 条评论
为什么被折叠?



