Hi,
I think i can use Europe time zone as current local time :

import datetime as dt
>>> import pytz
>>> utc = pytz.timezone("UTC")
>>> norway = pytz.timezone("Europe/Norway")
>>> a = dt.datetime(2008, 7, 6, 5, 4, 3, tzinfo=utc)
>>> b = a.astimezone(norway)

i think this will provide me correct current local time when clock is changed...

On Thu, Feb 28, 2013 at 10:44 PM, Morten Engvoldsen
<mortene...@gmail.com> wrote:
> Hi,
> Thanks all for suggestion...
>
> I am using current date as current date local time. I think
> datetime.datetime will provide current local date and time, so
> hopefullt the function take care
> if the local clock is changed...
>
> ---------- Forwarded message ----------
> From: Chris Angelico <ros...@gmail.com>
> To: python-list@python.org
> Cc:
> Date: Fri, 1 Mar 2013 07:52:04 +1100
> Subject: Re: Issue with continous incrementing of unbroken sequence
> for a entire working day
> On Fri, Mar 1, 2013 at 6:23 AM, John Gordon <gor...@panix.com> wrote:
>> In <mailman.2663.1362078015.2939.python-l...@python.org> Morten Engvoldsen 
>> <mortene...@gmail.com> writes:
>>
>>> But, if i save the serial_ number value in file, then how  will it decide
>>> to reset the serial number to '1' when the batch  runs on next working day.
>>
>> Name the file so that it contains the date, i.e. "serial_numbers.2013-02-28".
>>
>> If the file exists, you know that the program has already run today and
>> you can read the file to obtain the previous serial number.
>>
>> If the file does not exist, you know the program has not yet run today
>> and you can start the serial number at 1.
>
> Probably overkill; simpler to have just one file and record the date.
> Just be careful of definitions - do you use the current date UTC or
> the current date local time? And be aware of what might happen if the
> local clock is changed.
>
> ChrisA
>
> On Thu, Feb 28, 2013 at 9:41 PM, Morten Engvoldsen <mortene...@gmail.com> 
> wrote:
>>
>> Hi,
>> Okey i have wrote the below program as you suggested:
>>
>> import time
>> from datetime import date
>>
>> def salesrecord():
>>     serial_number = 0
>>     sales_recrod = {'record1':'product1', 
>> 'record2':'product2','record3':'product3'}
>>     for i in sales_recrod:
>>         print sales_recrod[i]
>>
>>         serial_number += 1
>>     print serial_number
>>     fo = open("workfile.txt", "wb")
>>     fo.write(str(serial_number))
>>     fo.close()
>>     with open("workfile.txt", 'r') as f:
>>         serial_number = f.read()
>>     today = date.today()
>>
>>
>>
>> salesrecord()
>>
>>
>> Here i am bit confuse with where i should write the read file function to 
>> read the current serial number and date. also when i overwrite the file with 
>> current serial number, it will overwrite the date also with current date, in 
>> that case how will i  compare the date. Can you please show me in my example 
>> how can i achive this..
>>
>>
>> ---------- Forwarded message ----------
>> From: Matt Jones <matt.walker.jo...@gmail.com>
>> To: "python-list@python.org" <python-list@python.org>
>> Cc:
>> Date: Thu, 28 Feb 2013 13:11:38 -0600
>> Subject: Re: Issue with continous incrementing of unbroken sequence for a 
>> entire working day
>> Store the day as well as the serial_number in your file.  If the day is the 
>> same as today's day, use the serial_number, if not, use 1.  At the end of 
>> you program write the current day and serial_number.
>>
>> Matt Jones
>>
>>
>> On Thu, Feb 28, 2013 at 1:00 PM, Morten Engvoldsen <mortene...@gmail.com> 
>> wrote:
>> Hi,
>> thanks for youe suggestion. I think i will go for your second option:
>>
>> # Runs this loop until killed
>> while True
>> <do some stuff: clean serial_number, if day changed, calculate salesrecord 
>> etc.>
>>
>> serial_number = salesrecord(serial_number)
>>
>>
>> But, if i save the serial_ number value in file, then how  will it decide to 
>> reset the serial number to '1' when the batch  runs on next working day. 
>> What condition can be good, so that next day when the batch runs, it will 
>> know it has to reset the value 1.  Also my batch will not automatcilly run 
>> whole day, this is user's decision how many times he wants to run the batch 
>> in a day. Can you elebrate more how can i do that ...
>>
>> ---------- Forwarded message ----------
>> From: Morten Engvoldsen <mortene...@gmail.com>
>> Date: Thu, Feb 28, 2013 at 5:31 PM
>> Subject: Issue with continous incrementing of unbroken sequence for a entire 
>> working day
>> To: python-list@python.org
>>
>>
>> Hi team,
>> I need to run a batch of sales records and  the batch has serial_number 
>> filed to store the serial number of the sales record. The serial number 
>> should be set to  1 everyday when the batch runs first time in a day and the 
>> maximum serial number could be 1000.
>>
>> So when the batch runs first time in a day and if it has 10 records, so the 
>> last serial number will be 10. And when the batch runs 2nd time in same day, 
>> the serial number should start from 11.  In this way serial_number will 
>> increment as an unbroken series throughout the entire working day. The next 
>> day when the batch runs first time the serial number will reset to 1.
>>
>> Now this could be sample code how the program can count the sequence for a 
>> batch:
>>
>> def salesrecord():
>>     serial_number = 1
>>     for i in selesrecord:
>>         print first_sales_record
>>         serial_number += 1
>>         print serial_number
>>
>> salesrecord()
>>
>> So if the batch has 10 records and last serial number of first batch is 10, 
>> then when the batch runs second time in the same day, how the 
>> 'serial_number' will get the value of 10 and then continue the serial number 
>> for the same day,  then for next day again the serial number will start from 
>> 1.
>>
>> Can you let me know how can i achive this in python? As i am in learning 
>> phase of python, can you let me know what would be good approach to do this 
>> in python.
>>
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to