Python 3模块导入错误

阿尔夫斯

我创建了一个python 3.4文件,并尝试将一些变量导入另一个python脚本中。这两个脚本都在同一个文件夹中,但我不断收到错误消息。

我可以使用导入,并且效果很好。但是,当我尝试从ServerConfiguration导入端口使用脚本从脚本导入变量时,ip出现错误,提示NameError:未定义名称'ServerConfiguration'

ServerConfiguration模块:

import socket
import sys
import os

serverIP = None

def serverSocket():
    PORT = 8884 # Port the server is listening on

ServerEst = input('Has a server been established')
if ServerEst == 'yes':
    ServerIP = input ('Enter the servers IP address')
    socks = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    socks.bind((ServerIP, PORT))
    print('Connection  Established at ' + serverIP)
else:
    CreateServer = input('Would you like to create a server')
    if CreateServer == 'yes':
        ServerIP = input('What is you LAN IP? Please remeber if reomte user are allowed to connect port forward port "8884" ')
        socks = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
        socks.bind((ServerIP, PORT))
        print('Connection  Established to ' + ServerIP)
    else:
        print ('Defaulting to default')
        ServerIP = 'localhost'
        socks = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
        socks.bind((ServerIP, PORT))
        print('Connection  Established to ' + ServerIP)

UserModule:

    from ServerConfiguration import serverSocket, serverIP 
    import socket
    import sys
    import os

    def sendMessage():
        sockc = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
        while True:
              MESSAGE = input('Type the message to send ')
              sockc.sendto((MESSAGE.encode, "utf-8"), (serverIP, PORT))
              print(MESSAGE)


    ServerConfiguration.serverSocket()
    sendMessage()
克沃罗别夫

如果您使用

from ServerConfiguration import serverSocket, serverIP 

你应该只写

serverSocket()

没有ServerConfiguration。

其它的办法:

import ServerConfiguration
...
ServerConfiguration.serverSocket()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章