zoukankan      html  css  js  c++  java
  • 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("1", 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("
    ".join(strings))

    输出结果:

  • 相关阅读:
    判断一张view 是否被加载过用 nil == view.superview
    oracle9i新增sql命令merge
    Windows平台个人常用软件推荐
    ASPxSpinEdit高度无法控件的解决办法
    Oracle编码约定
    宾克斯的酒 
    “dcom项目无属性”的解决方法
    安装VS2005后找不到工具箱的解决办法
    奇怪问题一个
    Oracle临时表空间不够,导致查询出错。
  • 原文地址:https://www.cnblogs.com/ElegantSmile/p/10842793.html
Copyright © 2011-2022 走看看