【发布时间】:2018-08-10 05:59:44
【问题描述】:
当用户输入 10-12 个数字时,我想获取最大日期和最长时间,以空格或逗号分隔
我尝试了日期的代码,但我陷入了创建一个逻辑来获取日期的最大月份 我所做的是首先按降序对列表进行排序,然后检查结果列表,如果数字小于或等于 1,则将其放置在第 0 个索引上,然后如果第 0 个索引编号为 1,则第 1 个数字index 将小于或等于 2
digits = [int(x) for x in input("Enter the digits").split(",")]
date = []
print(digits)
for x in range(0, len(digits)):
for y in range(0, len(digits) - x - 1):
if digits[y] <= digits[y + 1]:
temp = digits[y]
digits[y] = digits[y + 1]
digits[y + 1] = temp
print(digits)
for x in range(0, len(digits)):
if digits[x] <= 1:
date.insert(0, digits[x])
break
digits.remove(digits[x])
print("digits ", digits)
print(date)
for y in range(0, len(digits) - 1):
if date[0] == 1:
while digits[y] >= 0 and digits[y] <= 2:
if digits[y] >= digits[y + 1]:
date.insert(1, digits[y])
digits.remove(digits[y])
break
if date[0] < 1:
while digits[y] >= 0 and digits[y] <= 9:
if digits[y] >= digits[y + 1]:
date.insert(1, digits[y])
digits.remove(digits[y])
break
break
print("digits", digits)
for x in range(0, len(digits)):
if digits[x] <= 3:
date.insert(2, digits[x])
break
digits.remove(digits[x])
print(date)
print("digits", digits)
for y in range(0, len(digits)):
if date[2] == 3:
while digits[y] >= 0 and digits[y] <= 1:
if digits[y] >= digits[y + 1]:
date.insert(3, digits[y])
digits.remove(digits[y])
break
if date[2] < 3:
while digits[y] >= 0 and digits[y] <= 9:
if digits[y] >= digits[y + 1]:
date.insert(3, digits[y])
digits.remove(digits[y])
break
break
print(date)
当我给出输入时,现在在上面的代码中
input : 1,0,0,1,1
output :
[1, 0, 0, 1, 1]
[1, 1, 1, 0, 0]
digits [1, 1, 0, 0]
[1]
digits [1, 0, 0]
[1, 1, 1]
digits [0, 0]
[1, 1, 1, 0]
所以这里 1,1,1,0 是 11 个月,10 是天 所以格式应该是 MMDD,包括零 但是当我提供其他输入时,例如
input : 1,2,3,1,1
output :
[1, 2, 3, 1, 1]
[3, 2, 1, 1, 1]
digits [3, 2, 1, 1]
[1]
digits [3, 2, 1, 1]
[1, 3]
digits [2, 1, 1]
Traceback (most recent call last):
File "date.py", line 51, in <module>
if date[2] == 3:
IndexError: list index out of range
这里我想要 1,2,3,1 作为月 12 和天 31
【问题讨论】:
-
不太明白输入数字与日期的关系,您能详细说明一下吗?每个数字应该代表什么?
-
Digits 是用户输入的 i
-
这从代码中可以理解,我不明白的是每个数字的含义。年?几个月?天?
-
我将编辑输出类型
-
我编辑了格式
标签: python-3.x date time