python TCP服务器中没有为main函数生成输出

python TCP服务器中没有为main函数生成输出,python,tcp,server,Python,Tcp,Server,我编写了一个程序,将主机名和端口号作为命令行参数。当我删除主功能时,它工作正常,一旦我定义了主功能,就不会显示任何内容 import sys import socket from pip._vendor.distlib.compat import raw_input import os import threading def Main(serverName,serverPort): print('Initialising the socket') serverName=sys

我编写了一个程序,将主机名和端口号作为命令行参数。当我删除主功能时,它工作正常,一旦我定义了主功能,就不会显示任何内容

import sys
import socket
from pip._vendor.distlib.compat import raw_input
import os
import threading

def Main(serverName,serverPort):
    print('Initialising the socket')
    serverName=sys.argv[1]
    serverPort=int(sys.argv[2])
    serverAddress=(serverName,serverPort)
    #create the TCP/IP socket 
    clientSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    clientSocket.connect(serverAddress)
    sentence = raw_input('enter string in lower case')
    clientSocket.send(sentence)
    modifiedSentence= clientSocket.recv(1024)
    print ('from Server:'), modifiedSentence
    clientSocket.close()

if __name__==main:
    Main()

在这种情况下,您的main无法运行。您需要调整if子句,还需要获取sys.argv并将其传递给Main()方法,因为您编写它是为了需要参数作为输入

if __name__ == '__main__':
    serverName=sys.argv[1]
    serverPort=int(sys.argv[2])
    Main(serverName,serverPort)

在这种情况下,您的main无法运行。您需要调整if子句,还需要获取sys.argv并将其传递给Main()方法,因为您编写它是为了需要参数作为输入

if __name__ == '__main__':
    serverName=sys.argv[1]
    serverPort=int(sys.argv[2])
    Main(serverName,serverPort)

您的主函数需要两个参数,而您调用它时没有使用任何参数。此外,如果主函数需要两个参数,而您调用它时却没有任何参数,那么启动条件应该是
。如果uuu name uuu==''主uuuuu'