我在Python 2.5中有一个监听beantalk队列的应用程序。除了我最近购买的MacBook Pro,它在到目前为止我测试过的所有机器上都能正常工作。
在那台计算机上,当我尝试运行它时,出现此错误:
Traceback (most recent call last):
File "jobs.py", line 181, in <module>
Jobs().start()
File "jobs.py", line 154, in start
self.jobQueue = Queue()
File "src/utils/queue.py", line 16, in __init__
self.connection = serverconn.ServerConn(self.server, self.port)
File "src/beanstalk/serverconn.py", line 25, in __init__
self.poller = select.poll()
AttributeError: 'module' object has no attribute 'poll'
serverconn.py具有以下导入:
import socket, select
当我尝试从命令行运行它时,它也会失败:
Python 2.5.1 (r251:54863, Jul 23 2008, 11:00:16)
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import select
>>> select.poll()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'poll'
您对可能发生的事情有任何想法吗?
PS:尽管我非常有信心这不是来源问题,但是如果您需要失败来源的某些背景知识,可以在
[http://pastie.org/399342](此
粘贴)上找到它。
更新: 自从第一个答案开始,我就推测Mac OS是否支持select.poll(),但我也有iMac,并且具有完全相同的OS版本,并且工作正常:
2009-02-25 00:27:10,067 - Queue - DEBUG - Connecting to BeansTalk daemon @ localhost:11300
在您的MBP上使用MacPorts版本python
。
Mac OS X支持此功能。苹果股票豹python 2.5.1
没有。
如果尚未下载并安装MacPorts,则需要。仅供参考,我发现Porticus是MacPorts的出色GUI。
这是股票Leopard python与最新的MacPorts python2.5的比较…
Apple的Leopard python(python 2.5.1)- select.poll()
损坏
$ /usr/bin/python
Python 2.5.1 (r251:54863, Jan 13 2009, 10:26:13)
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import socket, select
>>> select.poll()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'poll'
>>>
Macports(Python 2.5.4)- select.poll()
可以使用!
$ /opt/local/bin/python2.5
Python 2.5.4 (r254:67916, Feb 3 2009, 21:40:31)
[GCC 4.0.1 (Apple Inc. build 5488)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import socket, select
>>> select.poll()
<select.poll object at 0x11128>
>>>
每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。这在一个场合特别有用——就如前面所提到的,当一个模块被第一次输入的时候,这个模块的主块将被运行。假如我们只想在程序本身被使用的时候运行主块,而在它被别的模块输入的时候不运行主块,我们该怎么做呢?这可以通过模块的__name__属性完成。 使用模块的__name__ 例8.2 使用模块的__name__ #!/usr/bin/python
我正在Linux Mint 16上使用python 2.7。我面临一个错误,如果我从程序启动器运行IDE(在Spyder和Pycharm上尝试过)(例如,从Alt F2的提示符或桌面上的图标快捷方式),模块不会加载,我会得到以下错误 但是,如果我从命令行运行程序,模块加载正确,程序运行正常。我只有一个安装每个IDE。这两个实例的sys.path输出如下: Pycharm从快捷方式运行的sys.pa
1.2 获取和安装 Python2.5 Linuxer 可以跳过这个步骤,大部分 Linux 都内置了 Python。Windows 下可以通过独立 的安装包进行安装。 1.2.1 在 Windows 上安装 Python Windows 的安装版本可以从 Python 主页上下载 http:// python.org/ftp/python/2.5.1/python-2.5.1.msi。双击,一步
我有一个问题pywhkit: 代码:导入pywhatkit pywhatkit。sendwhatmsg(“39123456789”,“Hi”,6,13) 结果:回溯(最近的最后一次调用):文件"C:\用户\Angelo\桌面\whatsapp.py",第1行,在导入pywhkit文件"C:\用户\Angelo\AppData\本地\程序\Python\Python310\lib\site-包\py
脑子瓦特了,想不出好办法…… bus.js: method.js 就这样的结构,如果把dataBus放在method里倒是能运行,但总感觉很怪,这个应该怎么拆分呢?
问题内容: 我想直接在html中使用几个常量(在控制器中几次)。 例如,这是主要的应用程序模块: 因此,很清楚如何使用控制器中的常量。 但是我该怎么做: 关键是将所有路线都放在一个地方。所以,我可以这样做,还是我选择了错误的方式? 问题答案: 恕我直言,更好的方法是使用$ rootScope。 在html中,每个范围都继承自$ rootScope,因此,如果当前作用域中不存在变量,则使用$ roo
问题内容: 我正在尝试将我的应用程序部署到Heroku,但是我依靠使用一些私有git repos作为模块。我这样做是为了在项目之间重复使用代码,例如,我有一个用于多个应用程序的自定义记录器。 问题是Heroku显然没有ssh访问此代码。关于这个问题,我找不到任何东西。理想情况下,Heroku具有一个公共密钥,我可以将其添加到模块中。 问题答案: 简而言之,这是不可能的。我想出的解决此问题的最佳方法
我正在尝试测试一个es6类,但我不知道如何用sinon存根一个函数模块。测试不是sm下的覆盖线。callSoap函数 我试试这个: module.js index.js(这是模块的索引) my-class.js test.js 我尝试在soapModule上存根,但生成了以下错误: 无法存根不存在的自己的属性call Soap