2016-11-01 2 views
1

タイムスタンプ文字列がリストに含まれているかどうかを検出し、その値が存在する場合は結果に送信し、そうでない場合は結果を「NONE」にします。私はこれまでこれを持っています。タイムスタンプは常にbtwを変更します。どのように私はこれを動作するように書き直すだろうか?リストの各要素、それはあなたがタイムスタンプを考慮形式でだかどうかをテストするstrptimeを使用してくださいリスト内のタイムスタンプ文字列を検出する

lists = ['405',3 ,'2014-12-06 14:08:58.990377', '\\N'] 

for i in range(len(lists)): 
    if lists[i] == ?????: 
     result = lists[i].split('.')[0] 
    else: 
     result = "NONE" 

答えて

4

strptimeは、文字列を解析できない場合はValueErrorを返します。それを解析することが可能であるならば、あなたは他のように、結果としてされて設定された「NONE

このような何か:この例の

from datetime import datetime 

for element in lists: 
    try: 
     # If this line doesn't throw an Error, it's indeed a timestamp in proper format. 
     datetime.strptime(element, "%Y-%m-%d %H:%M:%S.%f") 
     result = element 
    except (ValueError, TypeError): 
     result = "NONE" 
+1

を訂正フォーマット文字列:」%Y-%M-%D %H:%M:%S.%f " – Muposat

+0

ありがとう、訂正されました。 – yper

関連する問題