我想从文件中读取主机名,并在我的python脚本上使用它来进行REST API调用
server_list = []
with open('U4P.txt', 'r') as f:
for server_ip in f:
server_ip = server_ip.rstrip()
server_list.append(server_ip)
for server_ip in server_list:
ru = U4VConn(server_name='server_ip', port=8443,verify=False, username='san', password='xxxxx')
结果不显示ip,而是显示变量名server_ip PyU4V.rest_requests-错误-URL https://server_ip:8443/univmax/restapi/84/sloprovisioning/symmetrix的GET请求
答案 0 :(得分:1)
您不要在程序的任何地方使用server_ip的值。您几乎可以做到,但是您不小心通过调用'server_ip'
使其成为字符串。
您可能想要以下内容。
server_list = []
with open('U4P.txt', 'r') as f:
for server_ip in f:
server_ip = server_ip.rstrip()
server_list.append(server_ip)
for server_ip in server_list:
ru = U4VConn(server_name=server_ip, # Note that there are no quotes
port=8443,
verify=False,
username='san',
password='xxxxx')
答案 1 :(得分:1)
存在缩进错误和不必要的引用。
server_list = []
with open('U4P.txt', 'r') as f:
for server_ip in f:
server_ip = server_ip.rstrip()
server_list.append(server_ip) #here the indentation error
for server_ip in server_list:
ru = U4VConn(server_name=server_ip, port=8443,verify=False, username='san', password='xxxxx')
#^^^^^^^^^ here the unneded quotes
由于缩进错误,您仅将列表中的最后一个服务器保存在列表中。这就是为什么只获得一台服务器的原因。
由于引号,您使用字符串'server_ip'
作为服务器名称,而不是服务器名称本身。 server_ip
必须是变量。