Python学习打卡--day16(算法练习:判断闰年等)

题一:求输入年份是否闰年
'''
普通闰年:能被4整除但不能被100整除的年份为普通闰年。(如2004年就是闰年,1900年不是闰年);
世纪闰年:能被400整除的为世纪闰年。(如2000年是世纪闰年,1900年不是世纪闰年)
'''
year = int(input("请输入年份:"))
if (year % 4) == 0:
    if (year % 100) == 0:
        if (year % 400) == 0:
            print('%s是世纪闰年' % year)
        else:
            print('%s不是闰年' % year)
    else:
        print('%s是普通闰年' % year)

else:
    print('%s不是闰年' % year)
题二:1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
count = 0
for i in range(1, 5):
    for j in range(1, 5):
        for k in range(1, 5):
            if (i != j) and (i != k) and (j != k):
                print(i * 100 + j * 10 + k)
                count = count + 1
print("count:", count)
题三:输入某年某月某日,判断这一天是这一年的第几天?
"""
_author:taozi
_date:20190513
_describe:输入某年某月某日,判断这一天是这一年的第几天?
"""
from datetime import datetime, timedelta

print("请输入日期:格式%Y-%m-%d")
date_input = input()
# str转换为datetime
date = datetime.strptime(date_input, '%Y-%m-%d')
# datetime转换为timestamp,小数位表示毫秒数
date_time = date.timestamp()
# 计算当年1月1日的时间戳
date_start = datetime(date.year, 1, 1)
date_start_time = date_start.timestamp()
# 计算相隔日期相隔的天数,加1就代表这一年的第几天
days = int((date_time - date_start_time) / 86400 + 1)
print(('{}是这一年的第{}天').format(date_input, days))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值