私はあなたがdatetime
オブジェクトにそれを解析して、Januari 1、1970とその瞬間の間の秒数を計算勧め:
import datetime
d = datetime.datetime.strptime("20170108233000", "%Y%m%d%H%M%S")
t0 = datetime.datetime(1970, 1, 1, tzinfo=timezone.utc)
ticks = (d - t0).total_seconds()
EDIT:
またはすることができます、と@で、これを実行する
d.timestamp()
:jonrsharpeは、すぐにtimestamp
方法を使用することを提案します私のマシンは以下を生成します:
$ python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import datetime
>>>
>>> d = datetime.datetime.strptime("20170108233000", "%Y%m%d%H%M%S")
>>> t0 = datetime.datetime(1970, 1, 1)
>>> ticks = (d - t0).total_seconds()
>>> ticks
1483918200.0
>>>
$ date -d @1483918200
Mon Jan 9 00:30:00 CET 2017
これは、2017年1月9日に生成されることに注意してください。しかし、これはベルギー時間です。
これであなたはどこにいるのですか?その文字列をPythonの 'datetime'オブジェクト(' .strptime(...) ')に変換するか、そのオブジェクト(' .timestamp() ')からUnixのタイムスタンプを取得しますか? – jonrsharpe
私はPythonでうるう秒を追跡するものはないと思います。それが本当の必要条件なら、あなたはいくつかの問題を抱えています。 –
[Wikipedia](https://en.wikipedia.org/wiki/Unix_time)によると、Unix時間はうるう秒を無視するので、それに関してはPythonと同じです。良いことも、うるう秒を追跡していたライブラリは非常に難しいでしょう。 –