calendar.monthrange()函数显示错误

时间:2018-06-02 14:38:32

标签: python

import calendar
import string
year = str(input("Year:"))
month = str(input("Month:"))  
t  = (calendar.monthrange(year, month)[1]);
print(t[1]);

输入: 年份:2000 月:2 输出: 如果不是1< = month< = 12: TypeError:'int'和'str'

的实例之间不支持'< ='

3 个答案:

答案 0 :(得分:1)

calendar.monthrange(year, month)函数接受两个数字作为输入。所以首先你需要改变它。 另外,t = (calendar.monthrange(year, month)[1]);指的是数组中的第二个元素。因此变量t不再是数组。因此print(t[1]);会给你一个TypeError。

import calendar
import string
year = int(input("Year:"))
month = int(input("Month:"))  
t  = (calendar.monthrange(year, month)[1]);
print(t);

答案 1 :(得分:0)

  1. semicolons放在Python语句的末尾是没用的

  2. calendar.monthrange获取int作为参数

  3. year = int(input("Year:"))
    month = int(input("Month:"))
    
    1. calendar.monthrange返回tuple的int t[1]错误
    2. t  = calendar.monthrange(year, month)[1]
      print(t)
      

      t  = calendar.monthrange(year, month)
      print(t[1])
      

答案 2 :(得分:0)

将输入转换为int而不是字符串并丢失" [1]"在第5行

import calendar
import string
year = int(input("Year:"))
month = int(input("Month:"))  
t  = (calendar.monthrange(year, month));
print(t[1]);