AttributeError:'模块'对象没有属性

时间:2014-05-26 13:36:04

标签: python sockets

尝试在python中编写套接字但每次尝试使用套接字模块时都会出现属性错误。属性应该在那里。它们是相当基本的东西。我在这一点上只是复制和粘贴教程代码,但它仍然给我错误。

Traceback (most recent call last):
  File "C:\Users\micheal\workspace\GCNSocket\socket\GCNSocket.py", line 18, in <module>
    except socket.error, msg:
AttributeError: 'module' object has no attribute 'error'

我的代码是

import time
import socket
import sys

host_ip="209.208.78.170"
port=8099                   
if __name__ == "__main__":
   currentTime=time.time() #current time (time)
   lastTime=time.time() #records last time of last received packet (time)

   try:
       mySocket=socket.socket(socket.AF_INET,socket.SOCK_STREAM) # create socket
   except socket.error, msg:
      print ('Failed to create socket. Error code: ' + str(msg[0]) + ' , Error message : ' + msg[1])
      sys.exit()

  print("Starting Connection")
  if(mySocket.connect((host_ip,port))): #connect
       print("Connected to 209.208.78.170  port 8099")
  else:
       print("Unable to Connect")

如果我删除了try块并且只是创建了套接字,那么我会在&#39; socket&#39;中得到同样的错误。而不是&#39;错误&#39;

1 个答案:

答案 0 :(得分:1)

您正在使用socket作为包名。它导致您的包socket而不是标准库模块socket的导入。

重命名它,使其不与标准库模块名称冲突。