我的代码不喜欢我要求它将特定信息附加到特定行。我不确定为什么?
作为参考,我的代码如下所示:
def lookOnMe(fileName):
import socket
global HostName
with open(fileName, 'r+') as f:
next(f)
for line in f:
f.seek(0)
print(line)
findStop = line.index("|")
remainder = line[findStop+2:]
findStop = remainder.index("|")
ipAdd = remainder[:findStop]
ipAdd = "".join(ipAdd.split())
try:
HostName = socket.gethostbyaddr(ipAdd)
except:
HostName = '-'
f.write(line.rstrip('\n') + " | " + HostName + '\n')
f.read()
输入字符串,如下所示:
5558 | 1.000.00.00 | 1.222.0.0/10 | ER | apnic | 2001-07-19 | SOMESTUFF
答案 0 :(得分:0)
非常简单。
你next(f)
语句读取一行,即文件中的第一行,并且不执行任何操作。
然后,您第一次执行for line in f
,并尝试读取第二行。哪个是空的(因为你可能在第一行之后有换行符。)
它无法使用子字符串检测解析空行,因为没有|
个字符或任何类型的字符。