鱼C论坛

 找回密码
 立即注册
查看: 1496|回复: 5

python问题求助

[复制链接]
发表于 2021-4-14 21:59:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
def approximate(num):
    count = num // 2
    while count > 1:
        if (num % count) == 0:
            print(' %d 的最大约数是 %d' % (num, count))

            break

            count = count - 1

    else:
        print(' %d 是素数' % num)

number = int(input('请输入需要查询的数字: '))
result = approximate(number)

print('%d的最大约数是:%d' % (number, result))


运行结果是:

请输入需要查询的数字: 4
4 的最大约数是 2
Traceback (most recent call last):
  File "F:/pycharm_work/venv/最大约数.py", line 18, in <module>
    print('%d的最大约数是:%d' % (number, result))
TypeError: %d format: a number is required, not NoneType


typeerror  这两个值 number,result 应该都是输出的  ,不动为什么这块会出错,

虽然在上边 已经将结果输出了,但是就是好奇,为什么下边的输出会出现错误。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-4-14 22:55:32 | 显示全部楼层
result没有值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-15 07:44:32 From FishC Mobile | 显示全部楼层
result = approximate(number)你这个函数是没有返回值的,那你还给他赋值,这不是难为人??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-15 10:54:23 | 显示全部楼层
wp231957 发表于 2021-4-15 07:44
result = approximate(number)你这个函数是没有返回值的,那你还给他赋值,这不是难为人??

嗷嗷嗷  少个return  感谢感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-15 19:00:36 | 显示全部楼层
ai自由 发表于 2021-4-15 10:54
嗷嗷嗷  少个return  感谢感谢

看了 一下缺少返回值 是在哪里缺少啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-15 19:47:47 | 显示全部楼层
def approximate(num):
    count = num // 2
    while count > 1:
        if (num % count) == 0:
            print(' %d 的最大约数是 %d' % (num, count))
            return count
        else:
            print(' %d 是素数' % num)
        return

number = int(input('请输入需要查询的数字: '))
print(approximate(number))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-12 23:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表