尝试制作一个显示一个月中几天的程序

Trying to make a program that displays days in a month

我正在尝试编写一个程序,当您键入与月份对应的数字时,该程序会显示一个月中的几天。 前任。 1 = 一月,将打印“31” 这就是我所拥有的,对我来说似乎合乎逻辑。虽然我才刚刚一个多月,但我不知道自己在做什么。

def calcDaysInMonth():
(list,(range,(1, 12)))

a = raw_input()
int(a)

jan = 1

feb = 2

mar = 3

apr = 4

may = 5

june = 6

july = 7

aug = 8

sept = 9

octo = 10

nov = 11

dec = 12

if jan is True:
print("31")

使用静态数字不会帮助您获得正确的结果。因为闰年的二月天与正常情况不同。所以使用

$Year  = 2017
$month = 08`

echo cal_days_in_month(CAL_GREGORIAN, (int)$month, $Year);

您的代码不工作的原因是因为您将输入分配给 a 但您从未检查 a 的值并使用它来确定应该打印什么(您只是将整数分配给名为 janfeb 等的变量)

您正在寻找这样的东西:

a = int(raw_input())

if a == 1:
    print("31 days")
elif a == 2:
    print("28 days")

# just repeat with elif until december/12

您可以尝试使用字典来巧妙地使用它,将月映射到天之类的东西,但实际上更明智的解决方案如下...

由于 2 月有不同的闰年天数,因此仅使用 calendar.monthrange 获取任何给定年份的一个月天数更有意义:

from calendar import monthrange

year = 2017

a = int(raw_input())

num_days = monthrange(year, a)[1]

print("{} days".format(num_days))

感谢大家的帮助。 我的 class 现在对我们正在做的事情有了答案。想要什么:

month = int(raw_input())
day = 0

def calcDays(month):
    if month ==1:


days = 31
        print 31
    if month==2:
        days = 28
        print 28
    if month == 3:
        days = 31
        print 31
    if month == 4:
        days = 30
        print 30
    if month==5:
        days = 31
        print 31
    if month ==6:
        days = 30
        print 30
    if month==7:
        days = 31
        print 31
    if month ==8:
        days = 31
        print 31
    if month==9:
        days = 30
        print 30