<p>一个问题是有多个“漂亮的名字”,比如“澳大利亚/悉尼”,它们指向同一个时区(例如CST)。</p>
<p>因此,您需要获取本地时区的所有可能名称,然后选择您喜欢的名称。</p>
<p>例如:对于澳大利亚,有5个时区,但是更多的时区标识符:</p>
<pre><code> "Australia/Lord_Howe", "Australia/Hobart", "Australia/Currie",
"Australia/Melbourne", "Australia/Sydney", "Australia/Broken_Hill",
"Australia/Brisbane", "Australia/Lindeman", "Australia/Adelaide",
"Australia/Darwin", "Australia/Perth", "Australia/Eucla"
</code></pre>
<hr/>
<p>您应该检查是否有包装TZinfo的库来处理时区API。</p>
<p>例如:对于Python,请检查<code>pytz</code>库:</strong></p>
<p><a href="http://pytz.sourceforge.net/" rel="nofollow">http://pytz.sourceforge.net/</a></p>
<p>以及</p>
<p><a href="http://pypi.python.org/pypi/pytz/" rel="nofollow">http://pypi.python.org/pypi/pytz/</a></p>
<p>在Python中,您可以执行以下操作:</p>
<pre><code>from pytz import timezone
import pytz
In [56]: pytz.country_timezones('AU')
Out[56]:
[u'Australia/Lord_Howe',
u'Australia/Hobart',
u'Australia/Currie',
u'Australia/Melbourne',
u'Australia/Sydney',
u'Australia/Broken_Hill',
u'Australia/Brisbane',
u'Australia/Lindeman',
u'Australia/Adelaide',
u'Australia/Darwin',
u'Australia/Perth',
u'Australia/Eucla']
</code></pre>
<p>但是Python的API似乎非常有限,例如,它似乎没有像Ruby的<code>all_linked_zone_names</code>那样的调用——它可以找到给定时区的所有同义名称。</p>