小白Python练习册(10)【鱼币福利】
本帖最后由 冰河星云 于 2020-4-30 20:35 编辑今天我们代码中玩一点英文开始:
小白练习册10
今天的题目是:
输入某年某月某日,判断这一天是这一年的第几天?
哪里有英文?
在这!:
整个题目意思就是
输入一个数,判断它是这一年的第几天,输入格式:(全部连在一起,比如我要输入2015年的12月15日,就输入:20151215 ,再比如输入2014年的1月1日,输入:20140101)
**** Hidden Message *****
如果喜欢,别忘了:
评分订阅哦~
本帖最后由 永恒的蓝色梦想 于 2020-4-30 15:11 编辑
from sys import stdin,stdout
days=
year=int(stdin.read(4))
month=int(stdin.read(2))
day=int(stdin.read(2))
stdout.write(((days+1)if(year%400 if year%100 else year&3)and month>2 else days).__add__(day).__str__()) 本帖最后由 WangJS 于 2020-4-30 20:29 编辑
一个小白的方法{:10_250:}:
def rn(n): #判断是不是闰年
year = int(n[:4])
if year%100 == 0:
if year%400 == 0:
return True
else:
return False
else:
if year%4 == 0:
return True
else:
return False
def ts(): #天数计算
date = input('请输入日期(如:20200430):')
brn =
srn =
if rn(date) == True: #是闰年
num = sum(srn[:int(date)-1])
else: #不是闰年
num = sum(brn[:int(date)-1])
num += int(date)
print(date[:4],'已经过去了',num,'天~')
ts() 占楼,之前编写过 本帖最后由 Twilight6 于 2020-4-30 16:17 编辑
之前很少用time,今天下午看了两小时小甲鱼整理的time文档
import time as t
date = input('请输入日期(例:20080808):')
temp = date+' '+date+' '+date
date1 = t.mktime(t.strptime(temp,'%y %m %d'))
date2 = t.mktime(t.strptime(temp,'%y'))
print('{}年已经过了{}天哩~'.format(date,int((date1-date2)/3600/24)+1))
ps:谢谢楼主让我复习了time模块{:10_281:} {:10_256:} 本帖最后由 Hello. 于 2020-4-30 15:38 编辑
一如既往的不会py 中奖啊{:10_266:}{:10_266:} 本帖最后由 wuqramy 于 2020-4-30 15:19 编辑
完成
dat = input('Input a day:')
year = int(dat)
month = int(dat)
day = int(dat)
day += (month-1) * 30
if month < 9:
day += month//2
else:
day += (month+1)//2
if month > 2:
if year%400 ==0 or year%4 == 0 and year%100 !=0 :
day -= 1
else:
day -= 2
print(day)
{:10_266:}我太难了 占楼 Hello. 发表于 2020-4-30 15:00
请不要无意义灌水 try:
year = int(input("请输入年份: "))
mon = int(input("请输入年份: "))
date = int(input("请输入年份: "))
except:
print("输入数值类型,谢谢")
date_ _dict ping= {1:31, 2: 28, 3:31, 4:30, 5:31, 6:30,7:31, 8:31, 9:30, 10:31, 11:30, 12: 31}
date_ dict_ run={1:31,2: 29, 3:31, 4: 30, 5:31, 6: 30, 7:31, 8:31, 9:30, 10: 31, 11:30, 12:31}
sum_ days = 0
if (year%4==0 and year%1 00!=0)or year%400==0:date_ dict = date_ _dict_ _run
if mon>0 and mon <13:
while mon> 1:
sum_ days = sum_ _days + date_ _dict
mon-= 1
else:
print("输入月份错误,请重新输入")
sum_ days = sum_ days + date
print("这是{}年中的第{}天" .format(year, sum_ days))else:
date_ _dict = date_ dict _ping
ifmon>0andmon<13:
while mon > 1:
sum_ days = sum_ days + date_ _dict
mon -= 1
else:
print("输入月份错误,请重新输入")
sum_ _days = sum_ days + date
print("这是{}年中的第{}天".format(year, sum. _days)) 占楼 Mike_Python0721 发表于 2020-4-30 15:08
请不要无意义灌水
。。。你这是一百步笑五十步之人吗?
Twilight6 发表于 2020-4-30 15:33
。。。你这是一百步笑五十步之人吗?
我一步也没有{:10_256:} Hello. 发表于 2020-4-30 15:35
我一步也没有
{:10_258:} 本帖最后由 1469396970 于 2020-4-30 19:41 编辑
while(1):
year=int(input("year:"))
month=int(input("month:"))
day=int(input("day:"))
months1= #闰年
months2= #平年
if ((year%4==0)and(year%100!=0)):
Dth=months1+day
else:
Dth=months2+day
print('总天数:',Dth)
break
def leapyear(n):
if n%4==0:
return True
days=
year,mounth,day=
day2=sum(days[:mounth-1])+day
if leapyear(year)and mounth>2:
day2+=1
print(day2)
永恒的蓝色梦想 发表于 2020-4-30 14:55
好像……不对……(会报错)