1、给你两个时间st和et(00:00:00<=st <= et<=23:59:59), 请你给出这两个时间间隔的秒数。
如:st="00:00:00", et="00:00:10", 则输出10.
st="00:00:00"
et = "00:00:10"
if st[-2:] > et[-2:]:
print(st[-2:])
elif st[-2:] < et[-2:]:
print(et[-2:])
else:
if st[-2:] == et[-2:]:
print((st[-2:],et[-2:]))if st[-2:] > et[-2:]:
解题思路:使用切片和"if-elif-else"判断语句.
2、下过象棋的人都知道,马只能走'日'字形(包括旋转90°的日),现在想象一下,给你一个n行m列网格棋盘,
棋盘的左下角有一匹马,请你计算至少需要几步可以将它移动到棋盘的右上角,若无法走到,则输出-1.
如n=1,m=2,则至少需要1步;若n=1,m=3,则输出-1。
n = 2
m = 11
for value in range(n,m):
print(value)
if m // n >= n:
print("\n-1")
else:
if m // n < n:
print("\n则至少需要走" + m + "步")
if m // n == n:
print("\n则需要走零步")
3、给你一个时间t(t是一个字典,共有六个字符串key(year,month,day,hour,minute,second),值为每个值为数字组成的字符串,
如t={'year':'2013','month':'9','day':'30','hour':'16','minute':'45','second':'2'}
请将其按照以下格式输出, 格式:XXXX-XX-XX XX:XX:XX。如上例应该输出: 2013-09-30 16:45:02。
time = {'year':'2013',
'month':'9',
'day':'30',
'hour':'16',
'minute':'45',
'second':'2',
}
print(time['year'] + '-'
+ time['month'] + '-'
+ time['day'] + "\t"
+ time['hour'] + ':'
+ time['minute'] + ':'
+ time['second'])
4、给你一个整数组成的列表L,按照下列条件输出:
若L是升序排列的,则输出"UP";
若L是降序排列的,则输出"DOWN";
若L无序,则输出"WRONG"。
lst = [1,2,3,4,5,6,7,8]
if lst == lst[::-1]:
print('UP')
elif lst == lst:
print('DOWN')
else:
print('WRONG')
解题思路:使用"[::-1]"倒转.
5、给你一个整数列表L,判断L中是否存在相同的数字,
若存在,输出YES,否则输出NO。
lst1 = [1, 2, 3, 5, 6, 3, 2]
lst2 = [2, 5, 7, 9]
set1 = set(lst1)
set2 = set(lst2)
# 哪些整数既在lst1中,也在lst2中
print(set1.intersection(set2))
# 哪些整数在lst1中,不在lst2中
print(set1.difference(set2))
# 两个列表一共有哪些整数
print(set1.union(set2))
解题思路:使用"intersection()"、"difference()"、"nuion()"等函数.
6、已知 lst = [2, 3, 4]
依次要求用户输入2,3,4 的整数倍,先让用户输入2的倍数,如果用户输入的正确,输出“输入正确”,否则输出 “输入错误”,如果用户输入quit,则停止当前的输入,让用户输入3的倍数,输入3的倍数的过程中,如果用户输入quit,则让用户输入4的倍数
lst = [2, 3, 4]
for item in lst:
while True:
input_str = input("请输入{number}的倍数,想停止输入时,输入quit:".format(number=item))
if input_str == 'quit':
break
number = int(input_str)
if number % item == 0:
print("输入正确")
else:
print("输入错误")
解题思路:使用'for'循环与'while'循环嵌套集合使用.
7、使用input函数接受用户的输入,如果用户输入的数值小于等于10,则判断是奇数还是偶数,如果数值大于10,则输出“输入大于10,不判断奇偶”,用户输入quit,结束程序
while True:
input_str = input("请输入一个正整数,如果想停止程序,输入quit:")
if input_str == 'quit':
break
number = int(input_str)
if number > 10:
continue
if number % 2 == 0:
print("输入为偶数")
else:
print("输入为奇数")
小结:在本次做题过程中,做题速度有些慢,对有些函数还不是记得特别牢固(如:”intersection()“、“ difference()“、”nuion()“等等),对以己掌握的语句还不能很熟练的运用,很多题目只想到了其中一种解题方法,还有对单词量掌握的太少,逻辑思维还得多多训练,基础知识还得多多加强。