2016-11-22 50 views
0

我尝试MySQL的日期时间转换为Python.On调试同样有MySQL来Python的日期

ValueError异常:实时数据 '2001-06-04T11:30:35' 不匹配格式%Y-% m-%dT%H:%M:%S。 在MySQL中,数据中没有'T'。我试着格式化为'T'而没有。

我看到这篇文章How to convert the following string to python date?

这是代码:

query = QSqlQuery() 
query.exec_("SELECT birthday FROM vista.user ")  
def countAge(birthday): 
    birthday = datetime.strptime(str(birthday), "%Y-%m-%dT%H:%M:%S.%f") 
    today = date.today() 
    age = today.year - birthday.year 
    if today.month < birthday.month: 
     age -= 1 
    elif today.month == birthday.month and today.day < birthday.day: 
     age -= 1 
    if age >= 0 : 
     return age 
ages = [] 
index = 0 
while (query.next()): 
    print(query.value(index).toString()) 
    ages.append(countAge(query.value(index).toString())) 
    index = index + 1 

什么是问题?

+0

那么,什么是输出:'打印(query.value(指数)的ToString())'? – ekhumoro

+0

2001-06-04T11:30:35 –

+0

@ekhumoro,它用于测试 –

回答

1

如果一个例子日期字符串是2001-06-04T11:30:35,那么你需要:

birthday = datetime.strptime(str(birthday), "%Y-%m-%dT%H:%M:%S")