python延迟init对象bug

时间:2014-05-07 16:06:09

标签: python bluez lightblue

我很困惑。

我编码了这段代码

if __name__ == '__main__':
    channel=None
    devices = finddevices()
    print 'devices %s'%devices
    for d in devices:
        print d[0]
        ser=findservices(addr=d[0],name=None,servicetype=OBEX)
        print ser
        for s in ser:
            print s
            if 'OBEX Object Push' in s[2]:
                channel=s[1]
    obex.sendfile(d[0], channel, '/home/mobile.jar')

如果我在python shell中逐行编写,它可以正常工作。

如果我设置了一个断点并进行了调试,并且使用F6键逐步执行all,那么它可以正常工作。

但如果我通过python mycode.py在eclipse或终端正常执行,ser的值为None

有什么问题?

为什么findservices()在正常执行代码期间不起作用?

修改

这是python shell中service=findservices()的输出(在正常运行期间的eclipse中总是[])

>>> services=findservices()
  
    
      

服务       [(' 6C:0E:0D:3A:1F:90',2,'串行端口1'),(' 6C:0E:0D:3A:1F: 90',1,'拨号网络'),(' 6C:0E:0D:3A:1F:90',10,' OBEX SyncML客户端&# 39;),(' 6C:0E:0D:3A:1F:90',25,' Music Streaming Service'),(' 6C:0E:0D:3A :1F:90',23,'远程控制目标服务'),(' 6C:0E:0D:3A:1F:90',23,'远程Control Service'),(' 6C:0E:0D:3A:1F:90',2,' SEMC Watch Phone'),(' 6C:0E: 0D:3A:1F:90',15,' PAN网络接入点'),(' 6C:0E:0D:3A:1F:90',15,&# 39; PAN用户'),(' 6C:0E:0D:3A:1F:90',5,'免提网关'),(' 6C :0E:0D:3A:1F:90',4,' Headset Gateway'),(' 6C:0E:0D:3A:1F:90',6,& #39; OBEX对象推送'),(' 6C:0E:0D:3A:1F:90',7,' OBEX文件传输'),(' 6C:0E:0D:3A:1F:90',8,' OBEX IrMC Sync Server'),(' 6C:0E:0D:3A:1F:90', 17,' HID鼠标和键盘'),(' 6C:0E:0D:3A:1 F:90',61689,' SEMC HLA'),(' 6C:0E:0D:3A:1F:90',11,'电话簿访问PSE&# 39)]

    
  

0 个答案:

没有答案