为了账号安全,请及时绑定邮箱和手机立即绑定

Collatz序列,最后返回值中None应该怎么处理掉

Collatz序列,最后返回值中None应该怎么处理掉

莫回无 2018-07-23 21:08:30
新手学习Python,章节作业中需要编写Collatz序列,然后自己编写这样的代码这是关于Collatz序列的代码练习print('Enter number :')def Collatz():try:    num = int(input())    while num !=1 :        if num %2 == 0:            num = num // 2             print(num)         elif num %2 == 1:            num = 3*num+1             print(num) except ValueError:    print('Error! Please Enter number')print(Collatz())Enter number :5168421None如上返回值中却意外的出现了None,想问这个None是因为代码中的哪个点引起的,以及应该如何去除?之前尝试过if num == 1:break,或者调用sys.exit()都没法解决
查看完整描述

1 回答

?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

因为你的这句:

print(collatz())

collatz作为函数, 没有返回值的时候默认返回None. 这个None就被print()函数打印出来了.
所以你直接这样就好:

collatz()


查看完整回答
反对 回复 2018-07-29
  • 1 回答
  • 0 关注
  • 689 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信