本文实例讲述了Python编程实现输入某年某月某日计算出这一天是该年第几天的方法。分享给大家供大家参考,具体如下:

#基于 Python3
一种做法:
def is_leap_year(year): # 判断闰年,是则返回True,否则返回False
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
return True
else:
return False
def function1(year, month, day): # 计算给定日期是那一年的第几天
leap_year = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
no_leap_year = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
if is_leap_year(year):
result = sum(leap_year[:month - 1]) + day
else:
result = sum(no_leap_year[:month - 1]) + day
return result
但是如果是你自己遇到了这样的需求,那么就没必要这么复杂了。因为Python内置了完善的时间和日期处理函数。
import datetime
import time
def function2(year, month, day): # 直接使用Python内置模块datetime的格式转换功能得到结果
date = datetime.date(year, month, day)
return date.strftime('%j')
需要注意的是,上面的写法里函数的参数分别是年月日的整数,如果你想传入字符串,比如"2016-10-1",那就需要先对字符串做处理了。
同样的,也可以自己做或者用内置函数。
# 假如输入格式为字符串(比如从命令行读入字符串2016-10-1),则需要先对输入内容进行处理
_input = '2016-10-1'
_year1 = int(_input.split('-')[0])
_month1 = int(_input.split('-')[1])
_day1 = int(_input.split('-')[2])
# 当然你也可以用datetime的内置方法进行格式处理
t = time.strptime(_input, '%Y-%m-%d')
_year2 = t.tm_year
_month2 = t.tm_mon
_day2 = t.tm_mday
下面是完整的代码,测试"2016-10-1"的结果均为275。
import datetime
import time
def is_leap_year(year): # 判断闰年,是则返回True,否则返回False
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
return True
else:
return False
def function1(year, month, day): # 计算给定日期是那一年的第几天
leap_year = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
no_leap_year = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
if is_leap_year(year):
result = sum(leap_year[:month - 1]) + day
else:
result = sum(no_leap_year[:month - 1]) + day
return result
def function2(year, month, day): # 直接使用Python内置模块datetime的格式转换功能得到结果
date = datetime.date(year, month, day)
return date.strftime('%j')
print(function1(2016, 10, 1))
print(function2(2016, 10, 1))
# 假如输入格式为字符串(比如从命令行读入字符串2016-10-1),则需要先对输入内容进行处理
_input = '2016-10-1'
_split = _input.split('-')
_year1 = int(_split[0])
_month1 = int(_split[1])
_day1 = int(_split[2])
print(function1(_year1, _month1, _day1))
print(function2(_year1, _month1, _day1))
# 当然你也可以用datetime的内置方法进行格式处理
t = time.strptime(_input, '%Y-%m-%d')
_year2 = t.tm_year
_month2 = t.tm_mon
_day2 = t.tm_mday
print(function1(_year2, _month2, _day2))
print(function2(_year2, _month2, _day2))
# 后面发现我为了编函数写复杂了,如果输入是字符串其实一句话就好
import time
_input = '2016-10-1'
# 详见Python日期和字符串格式互相转换 https://www./article/66019.htm
t = time.strptime(_input, '%Y-%m-%d')
print(time.strftime('%j',t))
PS:这里再为大家推荐几款关于日期与天数计算的在线工具供大家使用:
在线日期/天数计算器:
http://tools./jisuanqi/date_jisuanqi
在线万年历日历:
http://tools./bianmin/wannianli
在线阴历/阳历转换工具:
http://tools./bianmin/yinli2yangli
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python日期与时间操作技巧总结》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
# Python
# 输入
# 某年
# 某月
# 某日
# 计算
# 第几天
# python输出指定月份日历的方法
# python实现根据月份和日期得到星座的方法
# python 计算两个日期相差多少个月实例代码
# 利用python获取当前日期前后N天或N月日期的方法示例
# Python实现按当前日期(年、月、日)创建多级目录的方法
# python获取指定日期范围内的每一天
# 每个月
# 每季度的方法
# python 输出上个月的月末日期实例
# Python 日期区间处理 (本周本月上周上月...)
# Python实例教程之检索输出月份日历表
# 操作技巧
# 几天
# 你也
# 可以用
# 要先
# 命令行
# 格式为
# 则需
# 格式转换
# 的是
# 进阶
# 这一
# 相关内容
# 那就
# 就好
# 均为
# 你想
# 你自己
# 感兴趣
# 数据结构
相关文章:
nginx修改上传文件大小限制的方法
宝塔建站无法访问?如何排查配置与端口问题?
宝盒自助建站智能生成技巧:SEO优化与关键词设置指南
python的本地网站制作,如何创建本地站点?
如何在阿里云香港服务器快速搭建网站?
合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?
如何制作网站标识牌,动态网站如何制作(教程)?
无锡营销型网站制作公司,无锡网选车牌流程?
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?
如何通过WDCP绑定主域名及创建子域名站点?
创业网站制作流程,创业网站可靠吗?
C#如何在一个XML文件中查找并替换文本内容
如何用y主机助手快速搭建网站?
如何将凡科建站内容保存为本地文件?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
如何登录建站主机?访问步骤全解析
如何在新浪SAE免费搭建个人博客?
建站主机SSH密钥生成步骤及常见问题解答?
建站主机选购指南:核心配置优化与品牌推荐方案
建站之星客服服务时间及联系方式如何?
广州建站公司哪家好?十大优质服务商推荐
天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?
代刷网站制作软件,别人代刷火车票靠谱吗?
相册网站制作软件,图片上的网址怎么复制?
如何选择香港主机高效搭建外贸独立站?
Android自定义listview布局实现上拉加载下拉刷新功能
如何快速搭建高效简练网站?
高端建站如何打造兼具美学与转化的品牌官网?
如何在建站主机中优化服务器配置?
移民网站制作流程,怎么看加拿大移民官网?
建站之星收费标准详解:套餐费用及年费价格表一览
云南网站制作公司有哪些,云南最好的招聘网站是哪个?
微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?
平台云上自助建站如何快速打造专业网站?
php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】
学校建站服务器如何选型才能满足性能需求?
高性能网站服务器部署指南:稳定运行与安全配置优化方案
如何在万网开始建站?分步指南解析
建站之星导航配置指南:自助建站与SEO优化全解析
网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何高效配置IIS服务器搭建网站?
活动邀请函制作网站有哪些,活动邀请函文案?
智能起名网站制作软件有哪些,制作logo的软件?
,南京靠谱的征婚网站?
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
*请认真填写需求信息,我们会在24小时内与您取得联系。