-1
from socket import socket, AF_INET, SOCK_DGRAM
import struct
import sys
import time

TIME1970 = 2208988800L  

client = socket.socket( socket.AF_INET, socket.SOCK_DGRAM )
data = '\x1b' + 47 * '\0'
client.sendto( data, ( sys.argv[1], 123 ))
data, address = client.recvfrom( 1024 )
if data:
    print 'Response received from:', address
    t = struct.unpack( '!12I', data )[10]
    t = TIME1970
    print '\tTime=%s' % time.ctime(t)

このスクリプトを実行しようとすると、次のエラーが発生します。これで私を助けてください:

File "C:\Users\Wolverine\Desktop\Apcog-python prog\test.py", line 8, in ?
    client = socket.socket( socket.AF_INET, socket.SOCK_DGRAM )
AttributeError: socket
Traceback (innermost last):
  File "C:\Program Files (x86)\Python\Pythonwin\pywin\framework\scriptutils.py", line 301, in RunScript
    exec codeObject in __main__.__dict__
  File "C:\Users\Wolverine\Desktop\Apcog-python prog\test.py", line 8, in ?
    client = socket.socket( socket.AF_INET, socket.SOCK_DGRAM )
AttributeError: socket
4

1 に答える 1

1

socketそのモジュールの他の要素と一緒にas としてインポートfrom socket import socketしたため、モジュール名を使用して参照する必要はありません。

client = socket(AF_INET, SOCK_DGRAM)

または、インポート行を次のように変更します。

import socket

属性アクセスによって、そのモジュールのアイテムを参照し続けます。

于 2012-11-26T10:08:58.167 に答える