Python【每日一问】21
问:
【基础题】输入某年某月某日,判断这一天是这一年的第几天?
【提高题】用 *号输出字母 C的图案
答:
【基础题】输入某年某月某日,判断这一天是这一年的第几天?
方法1:
import time
test_time = input("请输入日期(年-月-日):")
time_struct = time.strptime(test_time, "%Y-%m-%d")
time_year = time_struct.tm_year
time_yday = time_struct.tm_yday
print("{}是{}年这一年中的第{}天".format(test_time, time_year, time_yday))
方法2:
import datetime
date_time = input("请输入日期(年-月-日):")
datetime_struct = datetime.datetime.strptime(date_time, "%Y-%m-%d")
time_year = datetime_struct.timetuple().tm_year
time_yday = datetime_struct.timetuple().tm_yday
print("{}是{}年这一年中的第{}天".format(date_time, time_year, time_yday))
方法3:
def get_daynum():
year = input("请输入年份:")
month = input("请输入月份:")
day = input("请输入天:")
date1 = datetime.date(year=int(year), month=int(month), day=int(day))
date2 = datetime.date(year=int(year), month=1, day=1)
return ((date1 - date2).days + 1) if __name__ == '__main__':
print(get_daynum())
【提高题】用 *号输出字母 C的图案
方法1:
print(" ***** ")
print(" ** * ")
print(" ** ")
print(" ** ")
print(" ** * ")
print(" ***** ")
方法2:
ch = [[0, 1, 1, 0],
[1, 0, 0, 1],
[1, 0, 0, 0],
[1, 0, 0, 0],
[1, 0, 0, 1],
[0, 1, 1, 0]] for i in range(len(ch)):
for j in ch[i]:
if j == 0:
print(" ",end="")
else:
print("*", end=" ") print()
输出结果:

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

Python【每日一问】21的更多相关文章
- [python每日一练]--0012:敏感词过滤 type2
题目链接:https://github.com/Show-Me-the-Code/show-me-the-code代码github链接:https://github.com/wjsaya/python ...
- Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词
#coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...
- python每日一函数 - divmod数字处理函数
python每日一函数 - divmod数字处理函数 divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: ...
- 每日一问:Android 消息机制,我有必要再讲一次!
坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过. 我 17 年的 面试系列,曾写过一篇名为:Android 面试(五):探 ...
- 每日一问:谈谈 volatile 关键字
这是 wanAndroid 每日一问中的一道题,下面我们来尝试解答一下. 讲讲并发专题 volatile,synchronize,CAS,happens before, lost wake up 为了 ...
- 每日一问:讲讲 Java 虚拟机的垃圾回收
昨天我们用比较精简的文字讲了 Java 虚拟机结构,没看过的可以直接从这里查看: 每日一问:你了解 Java 虚拟机结构么? 今天我们必须来看看 Java 虚拟机的垃圾回收算法是怎样的.不过在开始之前 ...
- 每日一问:你了解 Java 虚拟机结构么?
对于从事 C/C++ 程序员开发的小伙伴来说,在内存管理领域非常头疼,因为他们总是需要对每一个 new 操作去写配对的 delete/free 代码.而对于我们 Android 乃至 Java 程序员 ...
- 每日一问:LayoutParams 你知道多少?
前面的文章中着重讲解了 View 的测量流程.其中我提到了一句非常重要的话:View 的测量匡高是由父控件的 MeasureSpec 和 View 自身的 `LayoutParams 共同决定的.我们 ...
- 每日一问:简述 View 的绘制流程
Android 开发中经常需要用一些自定义 View 去满足产品和设计的脑洞,所以 View 的绘制流程至关重要.网上目前有非常多这方面的资料,但最好的方式还是直接跟着源码进行解读,每日一问系列一直追 ...
- python每日一练:0007题
第 0007 题: 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. # -*- coding:utf-8 -*- import os def count ...
随机推荐
- 详解Go变量类型的内存布局
定义 每当我们编写任何程序时,我们都需要在内存中存储一些数据/信息.数据存储在特定地址的存储器中.内存地址看起来像0xAFFFF(这是内存地址的十六进制表示). 现在,要访问数据,我们需要知道存储它的 ...
- javascript(五)表达式
表达式 (expression) JavaScript中的一个短语, JavaScript解释器会将其计算(evaluate) 出一 个结果.程序中的常量是最简单的一类表达式.变量名也是一种简单的表达 ...
- P2995 [USACO10NOV]牛的照片(树状数组,逆序对)
题目: P2995 [USACO10NOV]牛的照片Cow Photographs P4545 [USACO10NOV]奶牛的图片Cow Photographs SP7809 COWPIC - Cow ...
- Ivanti的垃圾软件landesk
landesk是Ivanti公司推出的终端管理工具,这个工具垃圾就垃圾在无法卸载,进程杀不死.文件删不掉,奉劝大家千万不要安装这个软件.前些天公司的IT部门一直在催促员工安装这个软件,我一时糊涂安装了 ...
- java--Date时间
Date: 表示特定的瞬间,精确到毫秒,通过方法设定自己所表示的时间,可以表示任意的时间 System.currentTimeMillis() :返回的当前系统时间, 1970-1-1 至今的毫秒数 ...
- android studio学习----通过github的URL怎么导入新的工程
这一切的前提是你装了git,有了github帐号,之后就很简单,但是导入之后交给android studio 也会发生各种编译错误,这个时候就需要自己去一一解决了,主要还是 引用依赖版本的问题 第一 ...
- GeoIP的使用-C语言版
0x00. 简介 GeoIP库可以根据IP地址(支持IPv4 和 IPv6), 定位该IP所在的 洲.经纬度.国家.省市.ASN 等信息. GeoIP目前已经升级到GeoIP2,GeoIP2有两个版本 ...
- Spark GraphX图计算核心源码分析【图构建器、顶点、边】
一.图构建器 GraphX提供了几种从RDD或磁盘上的顶点和边的集合构建图形的方法.默认情况下,没有图构建器会重新划分图的边:相反,边保留在默认分区中.Graph.groupEdges要求对图进行重新 ...
- python3自动部署mariadb主从
master import configparser import os def config_mariadb_yum(): exists = os.path.exists('/etc/yum.rep ...
- 搭建Ceph分布式存储
环境: 系统 IP地址 主机名(登录用户) 承载角色 Centos 7.4 64Bit 1611 10.199.100.170 dlp(yzyu) ceph-client(root) admin-no ...