2017-04-08 13 views
0

問題を解決しようとしています。ここで私は日付と時刻を下記の形式の文字列として定義しています。2つの時間文字列に結合する

date1 = '2016-12-1' 
time1 = '10:30 AM' 
time2 = '11:30 PM' 

私は変数の別の文字列add_time = '01:50'型を持つ文字列です。

何私が探していることは次のとおりです。

new_date_and_time = time1 + add_time 

それは date1 and new_date_and_time

> 2016-12-1, 12:20 PM (10:30 AM + 1:50) 

を返しますが、私は、日付も変更され をtime2 + add_timeを追加していた場合それは2016-12-2, 1:20 AMを印刷する必要がありますように

これを実行できるパッケージはありますか?

+0

を使用して、時間を追加し、datetimeオブジェクトに文字列を変換します。私はあなたが求めているのは 'date1'と' time1'を 'datetime'として結合し、' 'datetime'を使って' timedelta'を追加することです(https://docs.python.org/2 /library/datetime.html)モジュール? – roganjosh

+0

質問が間違っていましたが、私は今理解しています。 '2016-12-2、1:20 AM'はあなたが望む形式ですか? 'isotime'や24時間の時計とは対照的に、物事は少し複雑になります。 '2016-12-2 01:20:00'など – roganjosh

+0

@roganjosh誰もが細かいでしょう – Shubham

答えて

0

は、その後の質問は少し混乱してtimedelta

from datetime import datetime, timedelta 

date1 = '2016-12-1' 
time1 = '10:30 AM' 

date_object = datetime.strptime(date1 + ' ' + time1, '%Y-%m-%d %I:%M %p') 
new_date_object = date_object + timedelta(hours=1) + timedelta(minutes=50) 
+0

私はもともと彼らが' timedelta'を望んでいると思っていましたが、実際これはハードコーディングされた解決策です。私は 'datetime.combine()'を提案し、 'add_time'をハードコードなしで' timedelta 'に構文解析する方法を提案します。 – roganjosh