我正在编写一个简单的Python客户端和服务器,它在我的代码中正常传递服务器地址,但是,我希望用户能够输入服务器地址并抛出错误,如果它不正确。当我有下面的代码时,我收到来自终端“列表索引超出范围”的错误消息。
server = (sys.argv[1])
serverAdd = (server, '65652') # server address and port number
任何人都可以帮我这个。
当我在python中运行我的客户端程序时,我希望能够输入一个地址来连接并将其存储在服务器中。我通过输入programname.py直接从命令行运行程序。服务器已在运行,正在侦听传入连接。
答案 0 :(得分:15)
使用这个Python:
import sys
print(sys.argv)
使用此命令调用:
>python q15121717.py 127.0.0.1
我得到了这个输出:
['q15121717.py', '127.0.0.1']
我认为你没有将参数传递给Python脚本
现在,您可以稍微更改代码以从服务器获取服务器,或者在没有传递服务器时提示服务器。在这种情况下,你会看到这样的东西:
if len(sys.argv) > 1:
print(sys.argv[1])
else:
print(input("Enter address:"))