最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python pandas實(shí)現(xiàn)獲取指定日期所屬月的月初月末

 更新時間:2025年12月13日 10:16:19   作者:cy^2  
這篇文章主要為大家詳細(xì)介紹如何使用Python的Pandas庫進(jìn)行日期格式轉(zhuǎn)換,并演示了如何獲取月初、月末及跨月日期的方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下

pandas獲取指定日期所屬月的月初月末

完整代碼:

import pandas as pd
from pandas.tseries.offsets import MonthBegin, MonthEnd  
from datetime import datetime as dt
# 日期格式為yyyy-mm-dd
df1 = pd.DataFrame({'date': ['2022-01-01', '2022-02-15', '2022-03-02', '2022-05-31']})
df1['new_date'] = df1['date'].astype('datetime64')

'''
# 日期格式為yyyy-mm-dd hh-mm-ss
f1 = pd.DataFrame({'date': ['2022-01-01 11:10:00', '2022-02-15 12:45:00']})
df1['new_date'] = df1['date'].astype('datetime64').dt.date 
'''

# 本月初:將間隔參數(shù)n設(shè)置成0時,當(dāng)僅為月初日期時才能正確的獲取當(dāng)月月初日期,其余日期將獲取成下月月初日期
df1['MonthStart'] = df1['new_date'] + MonthBegin(n=1) -  MonthBegin(n=1)

'''
# 方法2
def get_month_start(x):
    return datetime(x.year, x.month, 1)
df1['MonthStart'] = df['new_date'].map(get_month_start)
'''
# 本月末
df1['monthend'] = df1['new_date'] + MonthEnd(n=0) # n默認(rèn)為1

# 下月月末
df1['last_MonthEnd'] = df1['new_date'] + MonthEnd(n=0) +  MonthEnd(n=1)

print(df1)

結(jié)果如下: 

        date   new_date MonthStart   monthend last_MonthEnd
0  2022-01-01 2022-01-01 2022-01-01 2022-01-31    2022-02-28
1  2022-02-15 2022-02-15 2022-02-01 2022-02-28    2022-03-31
2  2022-03-02 2022-03-02 2022-03-01 2022-03-31    2022-04-30
3  2022-05-31 2022-05-31 2022-05-01 2022-05-31    2022-06-30

知識擴(kuò)展

1.python 獲取當(dāng)前月份月初日期和月末日期

使用time模塊的time.localtime()獲取當(dāng)前日期,使用calendar模塊calendar.monthrange的來獲取指定月份的天數(shù)。即可得到月初日期和月末日期,代碼如下:

import calendar
import time
day_now = time.localtime()
day_begin = '%d-%02d-01' % (day_now.tm_year, day_now.tm_mon)  # 月初肯定是1號
wday, monthRange = calendar.monthrange(day_now.tm_year, day_now.tm_mon)  # 得到本月的天數(shù) 第一返回為月第一日為星期幾(0-6), 第二返回為此月天數(shù)
day_end = '%d-%02d-%02d' % (day_now.tm_year, day_now.tm_mon, monthRange)
print('月初日期為:',day_begin, '月末日期為:',day_end)
#!/usr/bin/env python
# --*-- coding:utf-8 --*--
import calendar
day_now = '20150222' #給定日期
day_begin = day_now[0:6]+'01' #月初肯定是1號 所以 直接替換 就可以
monthRange = calendar.monthrange(int(day_now[0:3]),int(day_now[4:6]))#得到本月的天數(shù)
day_end = day_now[0:6]+str(monthRange[1])
print day_now,'月初日期為:',day_begin, '月末日期為:',day_end

2.pandas計算日期的年月日時分秒,星期,周次

用pandas的read_excel()方法讀取excel表數(shù)據(jù),將表格中"日期"列轉(zhuǎn)日期格式

import pandas as pd
import numpy as np
import datetime

df = pd.read_excel('./日期問題.xlsx')
# 將日期列轉(zhuǎn)成日期格式
df['日期'] = pd.to_datetime(df['日期'])   

dt模塊可輕松獲取日期基本屬性

# 轉(zhuǎn)年月日格式(字符串文本)
df['年月日'] = df['日期'].apply(lambda x: x.strftime('%Y%m%d'))
df['年']=df['日期'].dt.year  
df['季度']=df['日期'].dt.quarter
df['月']=df['日期'].dt.month
df['日']=df['日期'].dt.day   
df['星期幾']=df['日期'].dt.dayofweek
df['周次']=df['日期'].dt.week
df['時']=df['日期'].dt.hour
df['分']=df['日期'].dt.minute
df['秒']=df['日期'].dt.second

3.python 獲取月初月末

在數(shù)據(jù)處理和財務(wù)計算等場景,獲取一個月的第一天和最后一天是相當(dāng)常見的需求。這篇文章將教你如何使用 Python 實(shí)現(xiàn)獲取一個月的月初和月末。我們會一步步來,確保你理解每一個步驟。

整體流程

我們將遵循以下步驟來完成任務(wù):

步驟描述
1導(dǎo)入必要的庫
2獲取當(dāng)前時間
3計算月初
4計算月末
5輸出結(jié)果

步驟詳細(xì)講解

1. 導(dǎo)入必要的庫

在 Python 中處理日期和時間,我們通常會使用 datetime 模塊。這個模塊提供了很多有用的類和方法。

import datetime  # 導(dǎo)入datetime模塊

2. 獲取當(dāng)前時間

使用 datetime.datetime.now() 方法來獲取當(dāng)前的日期和時間。

now = datetime.datetime.now()  # 獲取當(dāng)前時間

3. 計算月初

計算月初的方式非常簡單:將當(dāng)前的日期替換為該月的第一天,即將日期部分設(shè)為 1。

month_start = now.replace(day=1)  # 替換為當(dāng)前月的第一天

4. 計算月末

計算月末的步驟有點(diǎn)復(fù)雜,因?yàn)槊總€月的天數(shù)不同。我們可以通過將下一月的第一天減去一天來得到當(dāng)前月的最后一天。

# 獲取下一個月的第一天
next_month = (now.replace(day=1) + datetime.timedelta(days=31)).replace(day=1)
# 減去一天,得到當(dāng)前月的最后一天
month_end = next_month - datetime.timedelta(days=1)

5. 輸出結(jié)果

最后,我們將月初和月末的結(jié)果打印出來。

print(f"本月的月初是: {month_start.strftime('%Y-%m-%d')}")  # 格式化輸出月初
print(f"本月的月末是: {month_end.strftime('%Y-%m-%d')}")  # 格式化輸出月末

完整代碼

結(jié)合上述所有步驟,下面是一段完整的 Python 代碼:

import datetime  # 導(dǎo)入datetime模塊

# 1. 獲取當(dāng)前時間
now = datetime.datetime.now()  # 獲取當(dāng)前時間

# 2. 計算月初
month_start = now.replace(day=1)  # 替換為當(dāng)前月的第一天

# 3. 計算月末
next_month = (now.replace(day=1) + datetime.timedelta(days=31)).replace(day=1)  # 獲取下一個月的第一天
month_end = next_month - datetime.timedelta(days=1)  # 當(dāng)前月的最后一天

# 4. 輸出結(jié)果
print(f"本月的月初是: {month_start.strftime('%Y-%m-%d')}")  # 格式化輸出月初
print(f"本月的月末是: {month_end.strftime('%Y-%m-%d')}")  # 格式化輸出月末

到此這篇關(guān)于python pandas實(shí)現(xiàn)獲取指定日期所屬月的月初月末的文章就介紹到這了,更多相關(guān)python獲取指定日期的月初月末內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python神經(jīng)網(wǎng)絡(luò)之批量學(xué)習(xí)tf.train.batch函數(shù)示例

    python神經(jīng)網(wǎng)絡(luò)之批量學(xué)習(xí)tf.train.batch函數(shù)示例

    這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)之批量學(xué)習(xí)tf.train.batch函數(shù)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • 一篇文章搞懂Python程序流程控制結(jié)構(gòu)

    一篇文章搞懂Python程序流程控制結(jié)構(gòu)

    這篇文章主要給大家介紹了關(guān)于Python程序流程控制結(jié)構(gòu)的相關(guān)資料,本節(jié)學(xué)習(xí)了Python程序的控制結(jié)構(gòu)之順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu),文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • pytorch中的transforms模塊實(shí)例詳解

    pytorch中的transforms模塊實(shí)例詳解

    今天小編就為大家分享一篇pytorch中的transforms模塊實(shí)例詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • pytorch實(shí)現(xiàn)多項(xiàng)式回歸

    pytorch實(shí)現(xiàn)多項(xiàng)式回歸

    這篇文章主要為大家詳細(xì)介紹了pytorch實(shí)現(xiàn)多項(xiàng)式回歸,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • python使用openCV遍歷文件夾里所有視頻文件并保存成圖片

    python使用openCV遍歷文件夾里所有視頻文件并保存成圖片

    這篇文章主要介紹了python使用openCV遍歷文件夾里所有視頻文件并保存成圖片,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友參考下吧
    2020-01-01
  • Python循環(huán)結(jié)構(gòu)全面解析

    Python循環(huán)結(jié)構(gòu)全面解析

    循環(huán)中的代碼會執(zhí)行特定的次數(shù),或者是執(zhí)行到特定條件成立時結(jié)束循環(huán),或者是針對某一集合中的所有項(xiàng)目都執(zhí)行一次,這篇文章給大家介紹Python循環(huán)結(jié)構(gòu)解析,感興趣的朋友跟隨小編一起看看吧
    2025-06-06
  • 編寫python代碼實(shí)現(xiàn)簡單抽獎器

    編寫python代碼實(shí)現(xiàn)簡單抽獎器

    這篇文章主要介紹了編寫python代碼實(shí)現(xiàn)簡單抽獎器,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • flask?route對協(xié)議作用及設(shè)計思路

    flask?route對協(xié)議作用及設(shè)計思路

    這篇文章主要為大家介紹了flask?route對協(xié)議作用及設(shè)計思路詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • Python中turtle作圖示例

    Python中turtle作圖示例

    這篇文章主要介紹了Python中turtle作圖示例,分享了幾則turtle作圖的小實(shí)例,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • pandas按行按列遍歷Dataframe的幾種方式

    pandas按行按列遍歷Dataframe的幾種方式

    這篇文章主要介紹了pandas按行按列遍歷Dataframe的幾種方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10

最新評論

昌邑市| 商河县| 申扎县| 绍兴市| 罗平县| 汽车| 临颍县| 奇台县| 合肥市| 绍兴市| 柳河县| 新乐市| 云南省| 沂源县| 临泉县| 客服| 海丰县| 铜梁县| 巴彦淖尔市| 卫辉市| 咸宁市| 娱乐| 永善县| 九台市| 霍林郭勒市| 武强县| 三亚市| 松滋市| 八宿县| 崇信县| 法库县| 漳浦县| 靖安县| 商丘市| 建水县| 门源| 敦化市| 临高县| 长顺县| 绥江县| 秦安县|