2017-09-14 1 views
0

일부 데이터에는 시간 소인이 포함되어 있으며 일부 데이터는 초 단위로 표시되지만 일부 데이터 형식에는없는 데이터 세트가 있습니다. 이 타임 스탬프를 비교하고 분류해야합니다. 나는이 레코드에 대해 형식을 다르게 정의하는 방법을 모른다.변환되지 않은 데이터가 일부 레코드에만 남아 있습니다.

그래서, 초 소수점이있는 사람들을 위해, 나는 쓸 수 있습니다 :

a = datetime.strptime(time, "%H:%M:%S.%f") 

과하지 않는 사람들을 위해

, 나는 쓰기 :

a = datetime.strptime(time, "%H:%M:%S") 

내가 을 비교해야 다른 시간 소인에.

답변

1

string.split 함수를 사용하여 문자열을 3 개의 필드로 분리하고 세 번째 필드에 "."이 있는지 확인하십시오. 여기서 제공 한 것보다 더 많은 오류 처리가 필요할 수 있습니다.

def has_seconds(a_string): 
    return "." in a_string.split(":")[2] 

if has_seconds(a_time): 
    a = datetime.strptime(a_time, "%H:%M:%S.%f") 
else: 
    a = datetime.strptime(a_time, "%H:%M:%S") 
0

또한 소수점을 제거 할 수 있으므로 모두 동일한 형식입니다.

관련 문제