编写程序,用户输入阿拉伯数字的日期,转换为汉字的日期。
例如,输入2021/2/25,输出二零二一年二月二十五日
大学Python任务:日期汉字格式转换
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- shadowsland 2021-11-13 16:48关注
逻辑:
1.定义一个字典对应数字和汉字做数字和汉字的转换
2.将两个/分别转成年和月,在最后加上日
参考代码:date_map = {'0': '零', '1': '一', '2': '二', '3': '三', '4': '四', '5': '五', '6': '六', '7': '七', '8': '八','9': '九'} def dateTrans(date): date_cn = list(date) # 处理数字日期 for i in range(len(date)): if date[i] in date_map: date_cn[i] = date_map[date[i]] # 处理年月日 year = date.find('/') month = date.rfind('/') date_cn[year] = '年' date_cn[month] = '月' date_cn.append('日') # 处理日,兼容月份只有一位数情况 if (month == 7 and len(date) == 10) or (month == 6 and len(date) == 9): if date_cn[month+1] == '零': date_cn.pop(month+1) elif date_cn[month+1] == '一': date_cn[month+1] = '十' else: date_cn.insert(month+2, '十') # 处理月 if month == 7: if date_cn[5] == '零': date_cn.pop(5) elif date_cn[5] == '一': date_cn[5] = '十' return ''.join(date_cn) if __name__ == '__main__': date = '2021/12/02' date_cn = dateTrans(date) print(date_cn)
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报 编辑记录无用 1
悬赏问题
- ¥50 切换TabTip键盘的输入法
- ¥15 可否在不同线程中调用封装数据库操作的类
- ¥15 微带串馈天线阵列每个阵元宽度计算
- ¥15 keil的map文件中Image component sizes各项意思
- ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
- ¥15 划分vlan后,链路不通了?
- ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
- ¥15 Vue3 大型图片数据拖动排序
- ¥15 Centos / PETGEM
- ¥15 划分vlan后不通了