2012-01-13 3 views
-1

네트워크 장치에 로그인하고 특정 정보를 확인하는 스크립트 작성 및 스크립트 작성이 새롭습니다.python 버전 3.1.3에서 csv의 연속 행 비교

두 열이있는 csv 파일이 있는데 첫 번째 열은 IP 주소이고 두 번째는 내가 확인하고 싶은 것입니다. 때로는 여러 개의 연속 된 행에서 동일한 IP 주소가 발생합니다. 다음 행을 확인하도록 스크립트를 설정하고 동일한 IP가 로그 아웃하지 않도록하려면 어떻게해야합니까?

나는 next() 메소드를 시도했지만 이전과 같으면 다음 라인을 건너 뛰었습니다.

+0

당신이 게시 할 수있는 ... (파이썬 2에서) 당신은 무엇을? – joaquin

답변

1
prevIP = '' 
for line in data: 
    if line[0] == prevIP: 
     continue 
    prevIP = line[0] 
    print line[1] 

루프가 진행 중이라고 가정합니다.

+0

csv.reader를 사용하고 있으므로 [x] 줄이 제대로 작동하지 않습니까? 잘못된 구문을 제공합니다. 감사. – user1147944

+0

python3 +를 사용하고 있으므로'print line [1]'을'print (line [1])'로 변경하십시오. 나머지는 작동해야합니다. – TyrantWave

+0

그래도 여전히 파이썬 2의 잔해가 떠 다니고 있습니다. – user1147944

0

또 다른 일반적인 생각

IPS = [('a', 1), ('a', 2), ('b', 1), ('c', 1), ('c', 2), ('c', 3)] 

def login(ip): 
    print "Logging in to ip ...", ip 

def logout(): 
    print "Logging out" 

previous_ip = IPS[0][0] 
login(IPS[0][0]) 

for ip, num in IPS: 
    if ip <> previous_ip: 
     logout() 
     login(ip) 

    print "*** Now checking ...", ip, num 
    previous_ip = ip 

logout()