天天看點

# yyds幹貨盤點 # 隻用3行Python代碼,擷取星期幾?

大家好,我是皮皮。

一、前言

前幾天在Python最強王者交流群分享了一個隻用3行Python代碼,擷取星期幾的問題,這裡拿出來給大家分享下,一起學習下。

# yyds幹貨盤點 # 隻用3行Python代碼,擷取星期幾?

看到這個代碼,我當時的第一反應是,這個人基礎學的還是可以的,​

​input​

​用到位了。對于初學者來說,能寫成這樣,也是不錯的了,起碼功能确實是實作了,雖然說起來确實有點說不上來的味道,應缺斯汀。

# yyds幹貨盤點 # 隻用3行Python代碼,擷取星期幾?

二、解決過程

有一說一,針對這個星期幾的問題,群裡的小夥伴們也給出了幾個方法,一起來看看吧。

【馮誠】解答

這裡給出【馮誠】大佬的寫法,如下圖所示:

# yyds幹貨盤點 # 隻用3行Python代碼,擷取星期幾?

【月神】解答

下面這個代碼是【月神】提供的,如下所示:

from datetime import datetime

print(f"星期{list('一二三四五六日')[datetime.today().weekday()]}")      
# yyds幹貨盤點 # 隻用3行Python代碼,擷取星期幾?

【瑜亮老師】解答

下面這個代碼是【瑜亮老師】提供的,如下所示:

week_dict = {1: '星期一', 2: '星期二', 3: '星期三', 4: '星期四', 5: '星期五', 6: '星期六', 7: '星期日'}
k = int(input("請輸入星期數字(1-7):"))     # 此處省略 try 檢測 int 轉換
print(week_dict.get(k, "輸入錯誤"))      
# yyds幹貨盤點 # 隻用3行Python代碼,擷取星期幾?

使用字典的get方法,設定了預設值,用于提示輸入的數字不在1-7範圍。

如果把字典裡面的key都改成字元串型的,連int都省了。代碼如下:

week_dict = {'1': '星期一', '2': '星期二', '3': '星期三', '4': '星期四', '5': '星期五', '6': '星期六', '7': '星期日'}
k = input("請輸入星期數字(1-7):") 
print(week_dict.get(k, "輸入錯誤"))      
# yyds幹貨盤點 # 隻用3行Python代碼,擷取星期幾?

完美配合!

# yyds幹貨盤點 # 隻用3行Python代碼,擷取星期幾?

三、總結