0

我正在尝试在 Raspberry Pi 上使用 pycurl。我已经成功安装了 pycurl,apt-get install python-pycurl并且我找到了一个小脚本来查看它是否正常工作:

import pycurl
c = pycurl.Curl()
c.setopt(c.URL, 'http://news.ycombinator.com')
c.perform()

当我使用运行此脚本时sudo ./pycurltest.py出现错误:

./pycurltest.py: 1: ./pycurltest.py: import: not found
./pycurltest.py: 2: ./pycurltest.py: Syntax error: "(" unexpected

但是,如果使用 python 解释器并使用,help(modules)我可以看到 pycurl 已安装。当我尝试在解释器中运行相同的脚本时,它可以工作,我得到:

<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx</center>
</body>
</html>

我在这里想念什么?

4

1 回答 1

0

第一行具有误导性。

./pycurltest.py: 1: ./pycurltest.py: import: not found

看起来解释器暗示找不到空白导入,或者它正在寻找:

import Pycurses#<---something else is here

检查您的 .py 脚本是否在行尾没有任何奇怪的字符,并且它具有正确的换行符:

import pycurl

来自 python文档

物理行是由行尾序列终止的字符序列。在源文件中,可以使用任何标准平台行终止序列 - 使用 ASCII LF(换行)的 Unix 形式,使用 ASCII 序列 CR LF(后跟换行)的 Windows 形式,或使用 ASCII 的旧 Macintosh 形式CR(返回)字符。无论平台如何,所有这些形式都可以平等地使用。嵌入 Python 时,应使用标准 C 换行符约定将源代码字符串传递给 Python API(表示 ASCII LF 的 \n 字符是行终止符)。

于 2013-09-12T22:55:18.903 回答