huangdongdong 发表于 2021-3-4 16:05:14

新手求助

def function(keys):
    b = int(keys)
    for b in range(100,1000):
      if b == str(b)**3 + str(b)**3 +str(b)**3:
            print('%d是水仙花数'%b)
      else:
            print('%d不是水仙花数'%b)



a=input('请输入水仙花数:')
function(a)



类型错误,如何修改

逃兵 发表于 2021-3-4 16:05:15

按照你的逻辑稍微改了一下
def function(keys):
    b = int(keys)
    for i in range(100,1000):
      if i == int(str(b))**3 + int(str(b))**3 +int(str(b))**3:
            print('%d是水仙花数'%b)
            break
    else:
      print('%d不是水仙花数'%b)



a=input('请输入水仙花数:')

function(a)

huangdongdong 发表于 2021-3-4 16:43:10

逃兵 发表于 2021-3-4 16:10
按照你的逻辑稍微改了一下

因为b=int(keys)
所以能不能 if i ==(b)**3+(b)**3+(b)**3

逃兵 发表于 2021-3-4 16:49:29

huangdongdong 发表于 2021-3-4 16:43
因为b=int(keys)
所以能不能 if i ==(b)**3+(b)**3+(b)**3

不可以,整型不能被切片
页: [1]
查看完整版本: 新手求助