【发布时间】:2017-01-07 02:26:17
【问题描述】:
我有一个包含以下内容的文本文件:
IP_ADD = "10.10.150.3"
BACKUP_IP = "10.10.150.4"
以及读取它的代码:
counter = 0
wordList = [None] * 100
with open("config.txt") as f:
content = f.read().splitlines()
for line in content:
line = line.split(' ',2)[-1]
wordList[counter] = line
counter = counter + 1
这将返回给我的只是带有 wordList 内引号的 IP 地址.. IE
wordList[0] = "10.10.150.3"
然后我尝试使用 OID 和该 IP 地址发送 SNMP 命令。浏览器
agent.set(MY_OID,wordList[0])
但这不起作用。如果我将其更改为以下内容:
agent.set(MY_OID,"10.10.150.3")
它有效。我在这里错过了什么?
【问题讨论】:
-
旁注:无需使用
f.read()读取整个文件,然后将其拆分然后循环遍历行。只需这样做:for line in f:并在从文件中读取每一行时循环。更多 Pythonic... -
第二个附注:不要使用
wordList = [None] * 100创建一个空列表,只需在顶部使用word_list=[],然后使用word_list.append(new_thing)添加到列表中。这也消除了对counter的需求。如果确实需要计数器,请使用enumerate,并且会自动启动和递增...