web-dev-qa-db-ja.com

タイムゾーンの設定Python

Pythonを使用して、PHPで次のようにタイムゾーンを設定することは可能ですか?

date_default_timezone_set("Europe/London");
$Year = date('y');
$Month = date('m');
$Day = date('d');
$Hour = date('H');
$Minute = date('i');

共有Webホスティングを使用しているため、他のモジュールなどを実際にインストールすることはできません。

何か案は?

46
Adam Chetnik
>>> import os, time
>>> time.strftime('%X %x %Z')
'12:45:20 08/19/09 CDT'
>>> os.environ['TZ'] = 'Europe/London'
>>> time.tzset()
>>> time.strftime('%X %x %Z')
'18:45:39 08/19/09 BST'

リストした特定の値を取得するには:

>>> year = time.strftime('%Y')
>>> month = time.strftime('%m')
>>> day = time.strftime('%d')
>>> hour = time.strftime('%H')
>>> minute = time.strftime('%M')

ディレクティブの完全なリストについては、 here を参照してください。 strftime()関数は、整数やその他の型ではなく、常に文字列を返すことに注意してください。

82
Richard Simões

使用できるウィンドウ:

PythonでWindowsコマンドプロンプトコマンドを実行する。

import os
os.system("tzutil /s \"Central Standard Time\"");

Windowsコマンドプロンプトで試してみてください:

これにより、現在のタイムゾーンが得られます。

tzutil/g

これにより、タイムゾーンのリストが表示されます。

tzutil/l

これはタイムゾーンを設定します:

tzutil/s「中央アメリカ標準時」

詳細なリファレンス: http://woshub.com/how-to-set-timezone-from-command-Prompt-in-windows/

4
Ashwin R

それは答えではありませんが、...

datetimeコンポーネントを個別に取得するには、より適切に datetime.timetuple を使用します。

time = datetime.now()
time.timetuple()
#-> time.struct_time(
#    tm_year=2014, tm_mon=9, tm_mday=7, 
#    tm_hour=2, tm_min=38, tm_sec=5, 
#    tm_wday=6, tm_yday=250, tm_isdst=-1
#)

部品の入手が簡単になりました:

ts = time.timetuple()
ts.tm_year
ts.tm_mon
ts.tm_mday
ts.tm_hour
ts.tm_min
ts.tm_sec
0
kolypto