【知识梳理】

【典例分析】
【例题31】
题目:计算每个月的天数
心得:calender.monthrange(year,month)=(weekday number,total days)
1 # author by : www.runoob.com 2 3 import calendar 4 monthRange = calendar.monthrange(2019,10) 5 print(monthRange)

【例题32】
题目:获取昨天的日期
心得:datetime模块的几种用法
1 # author by : www.runoob.com 2 3 # 引入 datetime 模块 4 import datetime 5 def getYesterday(): 6 today=datetime.date.today() 7 print(today) 8 oneday=datetime.timedelta(days=1) 9 print(oneday) 10 yesterday=today-oneday 11 return yesterday 12 13 # 输出 14 print(getYesterday())

【例题33】
题目:list操作大全
心得:高级操作马了马了
【例题34】
题目:30 个人在一条船上,超载,需要 15 人下船。于是人们排成一队,排队的位置即为他们的编号。报数,从 1 开始,数到 9 的人下船。如此循环,直到船上仅剩 15 人为止,问都有哪些编号的人下船了呢?
心得:我不会写难道还不会读吗!3!思路就是31人每人开局一条命循环游戏,除了三种特殊情况(如果是队尾就从头来,如果够15人停止,如果没命就下一个人报数)之外,正常报数,如果报到9就扣一条命,否则下一个人报数。
1 #定义字典 2 people={} 3 #初始化给每人编号,并设置默认值(可以视作命数)为1 4 for x in range(1,31): 5 people[x]=1 6 #打印出来看下效果 7 print(people) 8 #报数初始化 9 check=0 10 #人员编号 11 i=1 12 #下船人数 13 j=0 14 #31人大循环,先讨论三种特殊情况 15 while i<=31: 16 #第一种是到最后一个人的话 17 if i == 31: 18 #重头循环 19 i=1 20 #第二种是剩余15人停止循环 21 elif j == 15: 22 break 23 #第三种是遇到不幸报9命数为0已经下船的娃儿的编号 24 elif people[i] == 0: 25 #就把他跳过去 26 i+=1 27 #因为他已经下船了不能参与报数 28 continue 29 #非以上三种情况,说明还有命继续玩,正常参与报数 30 else: 31 #报数+1 32 check+=1 33 #如果报到了9! 34 if check == 9: 35 #可怜的娃你没命了下船吧 36 people[i]=0 37 #重新开始报数 38 check = 0 39 #并且公开处刑刚才下船的人 40 print("{}\t号下船了".format(i)) 41 #而且下船人数+1 42 j+=1 43 #如果没报到9 44 else: 45 #算你走运 46 i+=1 47 #下一个人继续报 48 continue

【例题35】
题目:使用 time 模块来实现秒表功能
心得:以后函数调用的心得就写在注释里啦
1 #time模块 2 import time 3 4 print('按下回车开始计时,按下 Ctrl + C 停止计时。') 5 while True: 6 try: 7 input() # 如果是 python 2.x 版本请使用 raw_input() 8 starttime = time.time() 9 print('开始') 10 while True: 11 #round(数字,圆整到第几位) 12 print('计时: ', round(time.time() - starttime, 0), '秒', end="\r") 13 #隔一秒打印 14 time.sleep(1) 15 #异常语句,后面会学 16 except KeyboardInterrupt: 17 print('结束') 18 endtime = time.time() 19 print('总共的时间为:', round(endtime - starttime, 2),'secs') 20 break

【例题36】
题目:计算n各自然数的立方和,略。
浙公网安备 33010602011771号