Cuente la cantidad de días de un mes específico usando NumPy

Para contar la cantidad de días de un mes específico, usaremos el método numpy.datetime64() del módulo numpy .

Ejemplos:

Input: month = 2; year = 2016
Output: 29 days

Input: month = 12; year = 2020
Output: 31 days

Supongamos que el mes cuyo número de días queremos contar sea P y el siguiente mes sea N. Restaremos la primera fecha del mes P de la primera fecha del mes N . Implementando esto en el método numpy.datetime64() .

Sintaxis:

Para todos los meses excepto diciembre:

numpy.datetime64('yyyy-N-01') - numpy.datetime64(yyyy-P-01')

Para diciembre:

numpy.datetime64('yyyy-P-31') - numpy.datetime64(yyyy-P-01') + 1

A continuación hay varios ejemplos que muestran cómo contar la cantidad de días de un mes específico usando el módulo numpy :

Ejemplo 1:

En este ejemplo, encontraremos el número de días del mes de febrero del año 2016.

Python3

# import module
import numpy
  
  
# explicit function to calculate
# number of days
def calcDays(month, year):
    date = 0
  
    # December case
    if month == 12:
        end = str(year)+'-'+str(month)+'-31'
        begin = str(year)+'-'+str(month)+'-01'
        date = 1
    else:
  
        # single digit months
        if month < 10:
            endM = '-0'+str(month+1)
            beginM = '-0'+str(month)
  
        # double digit months
        else:
            endM = '-'+str(month+1)
            beginM = '-'+str(month)
  
        end = str(year)+endM+'-01'
        begin = str(year)+beginM+'-01'
  
    # return number of days
    return (numpy.datetime64(end) - numpy.datetime64(begin)+date)
  
  
# Driver Code
  
# get month
month = 2
  
# get year
year = 2016
  
# call the function
print(calcDays(month, year))

Producción:

29 days

Ejemplo #2:

Aquí encontraremos el número de días del mes de abril del año 2001.

Python3

# import module
import numpy
  
  
# explicit function to calculate
# number of days
def calcDays(month, year):
    date = 0
  
    # December case
    if month == 12:
        end = str(year)+'-'+str(month)+'-31'
        begin = str(year)+'-'+str(month)+'-01'
        date = 1
    else:
  
        # single digit months
        if month < 10:
            endM = '-0'+str(month+1)
            beginM = '-0'+str(month)
  
        # double digit months
        else:
            endM = '-'+str(month+1)
            beginM = '-'+str(month)
  
        end = str(year)+endM+'-01'
        begin = str(year)+beginM+'-01'
  
    # return number of days
    return (numpy.datetime64(end) - numpy.datetime64(begin)+date)
  
  
# Driver Code
  
# get month
month = 4
  
# get year
year = 2001
  
# call the function
print(calcDays(month, year))

Producción:

30 days

Ejemplo #3:

En el siguiente programa, encontraremos el número de días en el mes de diciembre del año 2021.

Python3

# import module
import numpy
  
  
# explicit function to calculate
# number of days
def calcDays(month, year):
    date = 0
  
    # December case
    if month == 12:
        end = str(year)+'-'+str(month)+'-31'
        begin = str(year)+'-'+str(month)+'-01'
        date = 1
    else:
  
        # single digit months
        if month < 10:
            endM = '-0'+str(month+1)
            beginM = '-0'+str(month)
  
        # double digit months
        else:
            endM = '-'+str(month+1)
            beginM = '-'+str(month)
  
        end = str(year)+endM+'-01'
        begin = str(year)+beginM+'-01'
  
    # return number of days
    return (numpy.datetime64(end) - numpy.datetime64(begin)+date)
  
  
# Driver Code
  
# get month
month = 12
  
# get year
year = 2021
  
# call the function
print(calcDays(month, year))

Producción:

31 days

Publicación traducida automáticamente

Artículo escrito por hitainkakkar007 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *