On 14Aug2014 15:30, luofeiyu <elearn2...@gmail.com> wrote:
import sys
sys.version
'3.4.0 (v3.4.0:04f714765c13, Mar 16 2014, 19:25:23) [MSC v.1600 64 bit
(AMD64)]'
First, please post in an interleaved style so that we can see your responses
underneath the text to which they relate. Thanks.
Ok, you have Python 3.4.0. And (I am guessing from the "MSC"), some 64 bit
Windows install? You will need to look up the Microsoft documentation to see
whather your C library "struct tm" supports timezone information.
Your Android phone will be running some flavour of Linux I believe. Someone who
has used one may correct me here.
import time
time.tzname
('China Standard Time', 'China Daylight Time')
Ok. Have a look at time.timezone. That may help you.
Cheers,
Cameron Simpson <c...@zip.com.au>
On 8/14/2014 3:25 PM, Cameron Simpson wrote:
On 14Aug2014 14:52, luofeiyu <elearn2...@gmail.com> wrote:
in the manual https://docs.python.org/3.4/library/time.html
┌──┬──────────────────────────────────────────────────────────────────────┬─┐
│ │Time zone offset indicating a positive or negative time
difference │ │
│%z│from UTC/GMT of the form +HHMM or -HHMM, where H represents
decimal │ │
│ │hour digits and M represents decimal minute digits [-23:59,
+23:59]. │ │
├──┼──────────────────────────────────────────────────────────────────────┼─┤
│%Z│Time zone name (no characters if no time zone exists).
│ │
└──┴──────────────────────────────────────────────────────────────────────┴─┘
t1='Sat, 09 Aug 2014 07:36:46 '
time.strptime(t1,"%a, %d %b %Y %H:%M:%S ")
time.struct_time(tm_year=2014, tm_mon=8, tm_mday=9, tm_hour=7,
tm_min=36,
tm_sec
=46, tm_wday=5, tm_yday=221, tm_isdst=-1)
t2='Sat, 09 Aug 2014 07:36:46 -0700'
time.strptime(t2,"%a, %d %b %Y %H:%M:%S %z")
time.struct_time(tm_year=2014, tm_mon=8, tm_mday=9, tm_hour=7,
tm_min=36,
tm_sec
=46, tm_wday=5, tm_yday=221, tm_isdst=-1)
t1 and t2 is different time ,the timezone in t2 is -0700 ,why we
get the same
result?
What you get back a struct_time, which is little more than the
numeric values extracted from a time string. And as far as the text
you have supplied in your example, those values are the same.
Regarding the difference, string in t2 has a time zone offset.
My Python 3.4 doco says (about struct_time):
Changed in version 3.3: tm_gmtoff and tm_zone attributes are
available on platforms with C library supporting the corresponding
fields in struct tm.
Judging by your output, your C library does not support the
tm_gmtoff and tm_zone fields in its C library "struct tm".
Please:
tell us what specific version of Python you are using
tell us what OS you're running on
Then look up the localtime() or gmtime() functions for you C library
and see what that documentation says about "struct tm", which is
what they and the C library strptime() return.
t3='Sat, 09 Aug 2014 07:36:46 +0400'
time.strptime(t3,"%a, %d %b %Y %H:%M:%S %z")
time.struct_time(tm_year=2014, tm_mon=8, tm_mday=9, tm_hour=7,
tm_min=36,
tm_sec
=46, tm_wday=5, tm_yday=221, tm_isdst=-1)
The Directive %z has no any effect here,what is the matter?
The directive allows the strptime parser to keep recognising text.
Imagine, for example, that the timezone were embedded in the middle
of the string for some reason.
It looks like you platform does not support storing the time zone
information in the C library "struct tm", and therefore it does not
get exposed to the Python interpreter.
Cheers,
Cameron Simpson <c...@zip.com.au>
What I want is Facts. Teach these boys and girls nothing but Facts.
Facts
alone are wanted in life. Plant nothing else, and root out
everything else.
- Charles Dickens John Huffam 1812-1870 Hard Times [1854]
--
https://mail.python.org/mailman/listinfo/python-list