Python 更改times的字符串
在检查Python 更改times的字符串,python,python-2.7,Python,Python 2.7,在检查getTime1以查看字符串是否有效的同时,我正在处理代码。如果字符串有效,我希望在getTime1字符串有效时,每次将字符串向后更改30分钟 示例:getTime1字符串显示12:00AM,因此我想将其改为向后30分钟,以显示11:30PM。如果getTime1字符串显示12:30PM,我想将其改为向后30分钟以显示12:00PM 代码如下: getTime1 = self.getControl(344).getLabel() if day_date >= 0 and day_d
getTime1
以查看字符串是否有效的同时,我正在处理代码。如果字符串有效,我希望在getTime1
字符串有效时,每次将字符串向后更改30分钟
示例:getTime1
字符串显示12:00AM
,因此我想将其改为向后30分钟,以显示11:30PM
。如果getTime1
字符串显示12:30PM
,我想将其改为向后30分钟以显示12:00PM
代码如下:
getTime1 = self.getControl(344).getLabel()
if day_date >= 0 and day_date <= 6:
if getTime1 == '12:00AM':
self.getControl(344).setLabel('11:30PM')
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:30PM')
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')
getTime1=self.getControl(344.getLabel)()
如果day_date>=0且day_date为是,则有更简单的方法。您可能会对内置程序感兴趣。它允许您解析字符串并对其执行操作。您还可以执行以下操作:
time = time.split(':')
hour = int(time[0])
minute = int(time[1][:2])
然后你可以算出如何减去30分钟。用于验证您是否可以使用。这个怎么样
if getTime1 == '12:00AM':
self.getControl(344).setLabel('11:30PM')
elif getTime1 == '12:00PM':
self.getControl(344).setLabel('11:30AM')
else:
ind = getTime1.find(':')
if getTime1[ind+1:ind+3]=='30':
getTime1 = getTime1[:ind]+':00'+getTime1[-2:]
self.getControl(344).setLabel(getTime1)
else:
getTime1 = str(int(getTime1[:ind])-1)+':30'+getTime1[-2:]
self.getControl(344).setLabel(getTime1)
除了两种特殊情况外,此程序会查找:
,检查30
是否存在,如果存在,则会保留当前小时,并生成一个新字符串,其中AM
/PM
标签和小时保持不变,但00
而不是30
。如果结尾为00
,则将小时部分转换为int
,减去1,将其转换回字符串,在分钟部分添加30
,并再次保留AM
/PM
部分 天哪!那么多if/elif
语句。你能创建字典吗?不,我不能创建字典,因为我必须使用我编写的代码,但我无法找到如何减少if/elif
语句。也许你可以举一个例子,说明我是如何用12小时的时钟做到这一点的?不,这不是我想要的答案。我正在寻找如何减少我编写的代码,因为我想更改字符串。示例:如果getTime1>=12且getTime1