问:

【基础题】输入某年某月某日,判断这一天是这一年的第几天?

【提高题】用 *号输出字母 C的图案

答:

【基础题】输入某年某月某日,判断这一天是这一年的第几天?

方法1:

  1. import time
  2.  
  3. test_time = input("请输入日期(年-月-日):")
  4. time_struct = time.strptime(test_time, "%Y-%m-%d")
  5. time_year = time_struct.tm_year
  6. time_yday = time_struct.tm_yday
  7. print("{}是{}年这一年中的第{}天".format(test_time, time_year, time_yday))

方法2:

  1. import datetime
  2.  
  3. date_time = input("请输入日期(年-月-日):")
  4. datetime_struct = datetime.datetime.strptime(date_time, "%Y-%m-%d")
  5. time_year = datetime_struct.timetuple().tm_year
  6. time_yday = datetime_struct.timetuple().tm_yday
  7. print("{}是{}年这一年中的第{}天".format(date_time, time_year, time_yday))

方法3:

  1. def get_daynum():
  2. year = input("请输入年份:")
  3. month = input("请输入月份:")
  4. day = input("请输入天:")
  5. date1 = datetime.date(year=int(year), month=int(month), day=int(day))
  6. date2 = datetime.date(year=int(year), month=1, day=1)
  7. return ((date1 - date2).days + 1)
  8.  
  9. if __name__ == '__main__':
  10. print(get_daynum())

【提高题】用 *号输出字母 C的图案

方法1:

  1. print(" ***** ")
  2. print(" ** * ")
  3. print(" ** ")
  4. print(" ** ")
  5. print(" ** * ")
  6. print(" ***** ")

方法2:

  1. ch = [[0, 1, 1, 0],
  2. [1, 0, 0, 1],
  3. [1, 0, 0, 0],
  4. [1, 0, 0, 0],
  5. [1, 0, 0, 1],
  6. [0, 1, 1, 0]]
  7.  
  8. for i in range(len(ch)):
  9. for j in ch[i]:
  10. if j == 0:
  11. print(" ",end="")
  12. else:
  13. print("*", end=" ")
  14.  
  15. print()

输出结果:

方法3:

  1. from PIL import Image,ImageDraw,ImageFont
  2. import numpy as np
  3.  
  4. text = "C"
  5. myfont = ImageFont.truetype("msyh.ttc", 12) # 在代码所在目录下需要放置字体文件,此处为msyh.tcc
  6. size = myfont.getsize(text)
  7. img = Image.new("", size, "black")
  8. draw = ImageDraw.Draw(img)
  9. draw.text((0,0), text, "white", font=myfont)
  10. pixels = np.array(img, dtype=np.uint8)
  11. chars = np.array([' ', '*'], dtype="U1")[pixels]
  12. strings = chars.view('U' + str(chars.shape[1])).flatten()
  13. print("\n".join(strings))

输出结果:

Python【每日一问】21的更多相关文章

  1. [python每日一练]--0012:敏感词过滤 type2

    题目链接:https://github.com/Show-Me-the-Code/show-me-the-code代码github链接:https://github.com/wjsaya/python ...

  2. Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词

    #coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...

  3. python每日一函数 - divmod数字处理函数

    python每日一函数 - divmod数字处理函数 divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: ...

  4. 每日一问:Android 消息机制,我有必要再讲一次!

    坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过. 我 17 年的 面试系列,曾写过一篇名为:Android 面试(五):探 ...

  5. 每日一问:谈谈 volatile 关键字

    这是 wanAndroid 每日一问中的一道题,下面我们来尝试解答一下. 讲讲并发专题 volatile,synchronize,CAS,happens before, lost wake up 为了 ...

  6. 每日一问:讲讲 Java 虚拟机的垃圾回收

    昨天我们用比较精简的文字讲了 Java 虚拟机结构,没看过的可以直接从这里查看: 每日一问:你了解 Java 虚拟机结构么? 今天我们必须来看看 Java 虚拟机的垃圾回收算法是怎样的.不过在开始之前 ...

  7. 每日一问:你了解 Java 虚拟机结构么?

    对于从事 C/C++ 程序员开发的小伙伴来说,在内存管理领域非常头疼,因为他们总是需要对每一个 new 操作去写配对的 delete/free 代码.而对于我们 Android 乃至 Java 程序员 ...

  8. 每日一问:LayoutParams 你知道多少?

    前面的文章中着重讲解了 View 的测量流程.其中我提到了一句非常重要的话:View 的测量匡高是由父控件的 MeasureSpec 和 View 自身的 `LayoutParams 共同决定的.我们 ...

  9. 每日一问:简述 View 的绘制流程

    Android 开发中经常需要用一些自定义 View 去满足产品和设计的脑洞,所以 View 的绘制流程至关重要.网上目前有非常多这方面的资料,但最好的方式还是直接跟着源码进行解读,每日一问系列一直追 ...

  10. python每日一练:0007题

    第 0007 题: 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. # -*- coding:utf-8 -*- import os def count ...

随机推荐

  1. (一)RFB协议概述

    (文章是基于刚刚做过的一个项目,对相关知识点进行总结回顾.主要内容均是对之前收集资料的总结概括,很多内容转载自其它地方.因为时间比较长,没有一一记录转载地址,特此感谢!) 一.简介 RFB(远程帧缓冲 ...

  2. C# vb .NET读取识别条形码线性条码UPC-E

    UPC-E是比较常见的条形码编码规则类型的一种.如何在C#,vb等.NET平台语言里实现快速准确读取该类型条形码呢?答案是使用SharpBarcode! SharpBarcode是C#快速高效.准确的 ...

  3. Sql与Oracle的差异

    /*整理背景201403订单中心数据库迁移(整理Oracle与SQL的差异)整理规则第一句为SQL Server 第二句为Oracle*/--数据类型int integervarchar varcha ...

  4. MySQL中的存储过程、游标和存储函数

    MySQL中的存储过程首先来看两个问题: 1.什么是存储过程? 存储过程(Stored Procedure)是在数据库系统中,一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存 ...

  5. 微服务架构 ------ 插曲 Mybatis逆向工程

    1.首先是pom.xml, 我们需要引入需要的mvn插件 <?xml version="1.0" encoding="UTF-8"?> <pr ...

  6. 并发编程-线程,JMM,JVM,volatile

    1.线程 相信大家对线程这个名词已经很不陌生了,从刚开始学习java就接触到线程,先说说进程吧,进程就是系统分配资源的基本单位,线程是调度cpu的基本单位,进程由线程组成,一个进程至少又一个线程组成, ...

  7. Extjs 树菜单的自动展开数据的请求

    今天在做extjs开发的时候,在树菜单上遇到了一个坑,也许是我刚接触extjs 不熟的缘故 问题描述:后台设置的树自动展开,但是在前端总是只显示一条数据,但是数据确实都请求到了. 经过几个小时不屑的努 ...

  8. 为啥git会这么差!!!!

    删除分支  git push origin --delete Chapater6   可以删除远程分支Chapater6 git branch -d Chapater8 可以删除本地分支(在主分支中) ...

  9. Quality Center安装步骤

     测试管理工具 u 安装条件: Quality Center:QC9中文版 数据库:Oracle10 g 操作系统:Windows XP u 安装步骤: 1. 点击setup.exe,出现如下界面,点 ...

  10. flask项目结构

    project/ app/ # 整个程序的包目录 static/ # 静态资源文件 js/ # JS脚本 css/ # 样式表 img/ # 图片 favicon.ico # 网站图标 templat ...