Rosy7673 发表于 2021-7-24 11:41:16

各位帮忙纠个错?

year = int(input('请输入一个年份:'))

a = year%4
b = year%100
c = year%400

if (c == 0) or (a == 0 and b != 0):
    print(year+'是闰年')
else:
    print(year+'是平年')

想了半天没搞懂这个哪出错了(报错:TypeError: unsupported operand type(s) for +: 'int' and 'str')


q = input('请输入一个年份:')
year = int(q)

a = year%4
b = year%100
c = year%400

if (c == 0) or (a == 0 and b != 0):
    print(q+'是闰年')
else:
    print(q+'是平年')

后来写了个这个可以运行了


求解

fish_游鱼 发表于 2021-7-24 11:51:22

year是个整数,year+'是闰年'当然会报错

青出于蓝 发表于 2021-7-24 11:57:27

yeat是整形int类型,不能与str字符串直接相加。
year = int(input('请输入一个年份:'))

a = year%4
b = year%100
c = year%400

if (c == 0) or (a == 0 and b != 0):
    print(str(year)+'是闰年')
else:
    print(str(year)+'是平年')
我们可以先把year变成str类型再相加,或者像答案那样

qiuyouzhi 发表于 2021-7-24 11:58:05

数字不能和字符串拼接呀
year 是个数,而 q 是个字符串

Rosy7673 发表于 2021-7-24 11:59:14

青出于蓝 发表于 2021-7-24 11:57
yeat是整形int类型,不能与str字符串直接相加。

我们可以先把year变成str类型再相加,或者像答案那样

哦,懂了!

Rosy7673 发表于 2021-7-24 11:59:50

qiuyouzhi 发表于 2021-7-24 11:58
数字不能和字符串拼接呀
year 是个数,而 q 是个字符串

好的,明白了!
页: [1]
查看完整版本: 各位帮忙纠个错?