我试图在Raspberry Pi上使用pycurl。我已经使用apt-get install python-pycurl
成功安装了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>
我在这里缺少什么?
答案 0 :(得分:0)
第一行有误导性。
./pycurltest.py: 1: ./pycurltest.py: import: not found
看起来解释器建议无法找到空白导入,或者发现:
import Pycurses#<---something else is here
检查.py脚本在行尾没有任何奇怪的字符,并且它有一个正确的换行符:
import pycurl
来自python docs:
物理线是由行尾序列终止的字符序列。在源文件中,可以使用任何标准平台线路终止序列 - 使用ASCII LF(换行)的Unix表单,使用ASCII序列CR LF的Windows表单(返回后跟换行)或使用ASCII的旧Macintosh表单CR(返回)字符。无论平台如何,所有这些形式都可以平等使用。嵌入Python时,源代码字符串应使用换行符的标准C约定传递给Python API(\ n字符,表示ASCII LF,是行终止符)。