2016-12-23 37 views
0

fand ich ein Python-Programm, mit diesem Programm:‚Import IN‘ in Python

import IN 

Aber wenn ich versuche, es zu laufen, sagt es mir: Kein Modul namens ‚IN‘ Im für eine Suche Bibliothekare dieser Art benannt, aber nichts erscheint. Ich benutze Python 3.5 für Windows. Ich würde die Antworten zu schätzen wissen.

Der Code ist weiter:

import IN 
import socket, sys 
s=socket.socket(socket.AF_INET, socket.SOCK_DGRAM) 

MAX=65535 
PORT=9999 

if len(sys.argv)!=2: 
    print (sys.stderr, 'usage: sender.py host') 
    sys.exit(2) 

hostname=sys.argv[1] 
s.connect((hostname,PORT)) 
s.setsockopt(socket.IPPROTO_IP, IN.IP_MTU_DISCVER, IN.IP_PMTUDISC_D0) 
try: 
    s.send('#'*65000) 
except socket.error: 
    print ('The message did not make it') 
    option=getattr(IN, 'IP_MTU',14) 
    print('MTU:', s.getsockopt(socket.IPPROTO_IP, option)) 
else: 
    print ('MTU:', s.getsockopt(socket.IPPROTO_IP, option)) 
+0

Es könnte eine benutzerdefinierte Bibliothek oder ein anderes Skript im selben Verzeichnis sein, das importiert wird –

+1

Vielleicht ist ein Modul geschrieben von dem, der das Programm geschrieben hat, auf das Sie sich beziehen. Es gibt keine Garantie, dass es öffentlich ist. –

Antwort

1

Sieht aus wie Werte von Linux-Header-Datei-Schnittstelle include/uapi/linux/in.h

IP_PMTUDISC_D0 = 2 
IP_MTU_DISCVER = 10 
IP_MTU = 14 

Ich weiß nicht, ob Ihr IN.py ist öffentlich oder privat (wie andere vorschlagen) , aber wenn Ihnen nur ein paar Werte fehlen (wie in Ihrem Beispielcode aufgeführt), können Sie sie einfach neu erstellen.