2017-04-12 2 views
0

내 목표는 1000 초 동안 ipconfig를 10 초마다 실행하여 날짜가 포함 된 텍스트 파일에 명령의 출력을 쓰는 것입니다. 아래에있는 내 코드의 문제는 루프를 통해 2 차 실행을 시작하면, 그것은 최대 기침이다 :루프에서 datetime 출력 실패

datetime = datetime.datetime.now().strftime("%Y-%m-%d_%H%M")
AttributeError: 'str' object has no attribute 'datetime'

import datetime 
import os 
import time 

count=0 
while (count < 1000): 
    print '--------------------------------------------------------' 
    print count 
    datetime = datetime.datetime.now().strftime("%Y-%m-%d_%H%M") 
    print datetime 
    os.system("ipconfig > ipconfig_" + datetime) 
    print '--------------------------------------------------------' 
    time.sleep(10) 
    count = count + 1 
print "Good bye!" 

모든 아이디어는 어디 잘못된거야? 많은 감사합니다.

+0

' datetime = datetime.datetime' ... 당신은 방금 가져온 모듈을 덮어 썼습니다. 다른 변수 이름을 사용하십시오 –

+0

변수 이름으로 내장 이름을 사용하는 것은 나쁜 생각입니다.'datetime_now'와 같은 것을 사용할 수 있습니다. – Hackaholic

+0

또한 '범위 내에서 카운트 (1000)'가 해당 루프를 작성하기위한 제안 된 방법이 될 것입니다 –

답변

2

코드에서 datetime 변수를 다시 사용하는 것처럼 보입니다. 첫 번째 실행에서는 datetime이 가져온 모듈이므로 제대로 작동합니다. 문자열 날짜에는 부동산 날짜가 없기 때문에 그런 다음 두 번째 실행에서

datetime = datetime.datetime.now().strftime("%Y-%m-%d_%H%M") 
# datetime is now a string storing the date time in the format specified 

에, 코드는 지금 같은 줄의 우측에 충돌

고정 코드 :

import datetime 
import os 
import time 

count=0 
while (count < 1000): 
    print '--------------------------------------------------------' 
    print count 
    date_time = datetime.datetime.now().strftime("%Y-%m-%d_%H%M") 
    print date_time 
    os.system("ifconfig > ifconfig_" + date_time) 
    print '--------------------------------------------------------' 
    time.sleep(10) 
    count = count + 1 
print "Good bye!" 
+0

감사합니다. –

관련 문제