파이썬 현재시간 얻기 함수 getCurrentTime()
아래와 같이 함수를 만들어보았다.
time 패키지를 임포트 해야 하며, 시간을 ‘20180102004055’ 형태로 얻는다.
더 좋은 방법이 있겠지만 검색해보니 또 다른 패키지를 이것저것(ex: gmtime, strftime) 더 추가해야 하는 것 같아서 그냥 만들었다.
import time
# 시간을 ‘20180102004055’ 형태로 얻는다.
def getCurrentTime():
timeArr = time.ctime().split(” “)
# time.ctime() 결과는 다음과 같다.
# Tue Jan 2 00:07:54 2018
result = “”
result += convNumToStr(timeArr[5], 4)
result += convNumToStr(convMonthToNum(timeArr[1]), 2)
result += convNumToStr(timeArr[3], 2)
result += convNumToStr(str(timeArr[4]).replace(“:”,“”), 6)
return result
# 알파벳으로 된 Month를 2자리 숫자 문자열로 변환한다.
def convMonthToNum(_month):
if (_month is None or _month == “”):
return “00”
if (_month == “Jan”):
return “01”
elif (_month == “Feb”):
return “02”
elif (_month == “Mar”):
return “03”
elif (_month == “Apr”):
return “04”
elif (_month == “May”):
return “05”
elif (_month == “Jun”):
return “06”
elif (_month == “Jul”):
return “07”
elif (_month == “Aug”):
return “08”
elif (_month == “Sep”):
return “09”
elif (_month == “Oct”):
return “10”
elif (_month == “Nov”):
return “11”
elif (_month == “Dec”):
return “12”
return “00”
# 숫자를 특정 자리수의 문자열로 변환한다.
def convNumToStr(_str, _len):
if (_str is None):
_str = “”
else:
_str = str(_str)
if (_len < 0):
_len = 0
realLen = len(_str)
if (realLen == _len):
return _str
if (realLen < _len):
gap = _len – realLen
for i in range(0, gap):
_str = “0” + _str
return _str
return _str[realLen – _len, realLen]