如何在python中更改object中的时间?

2024-10-03 06:28:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写代码来更改对象字符串中的12小时时间。你知道吗

我需要一些代码方面的帮助,因为我在更改对象中的12小时时间方面有点麻烦。你知道吗

def GoLeft(self):

   if CurrentRow == 375:
       if self.channel_page >= 0:
          # Set the date and time row
          getTime1 = self.getControl(344)
          getTime2 = self.getControl(345)
          getTime3 = self.getControl(346)
          getTime3.setLabel(getTime2.getLabel())
          getTime2.setLabel(getTime1.getLabel())
          getTime1 = self.getControl(344).getLabel()
          hour = time.strftime("%I").lstrip('0')

          #Find the time for each clock to change the text
          if getTime1 == '12:00AM':
             self.getControl(344).setLabel('11:30AM')
          elif getTime1 == '12:30AM':
             self.getControl(344).setLabel('12:00AM')
          elif getTime1 == '1:00AM':
             self.getControl(344).setLabel('12:30AM')
          elif getTime1 == '1:30AM':
             self.getControl(344).setLabel('1:00AM')
          elif getTime1 == '2:00AM':
             self.getControl(344).setLabel('1:30AM')
          elif getTime1 == '2:30AM':
             self.getControl(344).setLabel('2:00AM')
          elif getTime1 == '3:00AM':
             self.getControl(344).setLabel('2:30AM')
          elif getTime1 == '3:30AM':
             self.getControl(344).setLabel('3:00AM')
          elif getTime1 == '4:00AM':
             self.getControl(344).setLabel('3:30AM')
          elif getTime1 == '4:30AM':
             self.getControl(344).setLabel('4:00AM')
          elif getTime1 == '5:00AM':
             self.getControl(344).setLabel('4:30AM')
          elif getTime1 == '5:30AM':
             self.getControl(344).setLabel('5:00AM')
          elif getTime1 == '6:00AM':
             self.getControl(344).setLabel('5:30AM')
          elif getTime1 == '6:30AM':
             self.getControl(344).setLabel('6:00AM')
          elif getTime1 == '7:00AM':
             self.getControl(344).setLabel('6:30AM')
          elif getTime1 == '7:30AM':
             self.getControl(344).setLabel('7:00AM')
          elif getTime1 == '8:00AM':
             self.getControl(344).setLabel('7:30AM')
          elif getTime1 == '8:30AM':
             self.getControl(344).setLabel('8:00AM')
          elif getTime1 == '9:00AM':
             self.getControl(344).setLabel('8:30AM')
          elif getTime1 == '9:30AM':
             self.getControl(344).setLabel('9:00AM')
          elif getTime1 == '10:00AM':
             self.getControl(344).setLabel('9:30AM')
          elif getTime1 == '10:30AM':
             self.getControl(344).setLabel('10:00AM')
          elif getTime1 == '11:00AM':
             self.getControl(344).setLabel('10:30AM')
          elif getTime1 == '11:30AM':
             self.getControl(344).setLabel('11:00AM')
          elif getTime1 == '12:00PM':
             self.getControl(344).setLabel('11:30AM')
          elif getTime1 == '12:30PM':
             self.getControl(344).setLabel('12:00PM')
          elif getTime1 == '1:00PM':
             self.getControl(344).setLabel('12:30AM')
          elif getTime1 == '1:30PM':
             self.getControl(344).setLabel('1:00PM')
          elif getTime1 == '2:00PM':
             self.getControl(344).setLabel('1:30PM')
          elif getTime1 == '2:30PM':
             self.getControl(344).setLabel('2:00PM')
          elif getTime1 == '3:00PM':
             self.getControl(344).setLabel('2:30PM')
          elif getTime1 == '3:30PM':
             self.getControl(344).setLabel('3:00PM')
          elif getTime1 == '4:00PM':
             self.getControl(344).setLabel('3:30PM')
          elif getTime1 == '4:30PM':
             self.getControl(344).setLabel('4:00PM')
          elif getTime1 == '5:00PM':
             self.getControl(344).setLabel('4:30PM')
          elif getTime1 == '5:30PM':
             self.getControl(344).setLabel('5:00PM')
          elif getTime1 == '6:00PM':
             self.getControl(344).setLabel('5:30PM')
          elif getTime1 == '6:30PM':
             self.getControl(344).setLabel('6:00PM')
          elif getTime1 == '7:00PM':
             self.getControl(344).setLabel('6:30PM')
          elif getTime1 == '7:30PM':
             self.getControl(344).setLabel('7:00PM')
          elif getTime1 == '8:00PM':
             self.getControl(344).setLabel('7:30PM')
          elif getTime1 == '8:30PM':
             self.getControl(344).setLabel('8:00PM')
          elif getTime1 == '9:00PM':
             self.getControl(344).setLabel('8:30PM')
          elif getTime1 == '9:30PM':
             self.getControl(344).setLabel('9:00PM')
          elif getTime1 == '10:00PM':
             self.getControl(344).setLabel('9:30PM')
          elif getTime1 == '10:30PM':
             self.getControl(344).setLabel('10:00PM')
          elif getTime1 == '11:00PM':
             self.getControl(344).setLabel('10:30PM')
          elif getTime1 == '11:30PM':
              self.getControl(344).setLabel('11:00PM')

我可以把时间改回30分钟,例如:从1:30AM1:00AM。当我有时间1:00AM时,它不会找到1:00AM的字符串来将其更改为12:30PM。原因是我有两种不同类型的AMPM。你知道吗

你能给我举个例子,在把对象中的字符串改成我想要的时间之前,我怎样才能找到AM和PM之间的时间?你知道吗


Tags: the对象字符串代码selfiftime时间
1条回答
网友
1楼 · 发布于 2024-10-03 06:28:58

你可以这样减去半小时:

from datetime import timedelta
import datetime
getTime1 = "12:00AM"
t = datetime.datetime.strptime(getTime1, "%I:%M%p")
time_half_hour_before = (t-timedelta(days=-1, minutes=30)).strftime("%I:%M%p")
print time_half_hour_before

打印内容:

11:30PM

相关问题 更多 >