鱼C论坛

 找回密码
 立即注册
查看: 3286|回复: 4

[已解决]关于print()函数和class类的问题?

[复制链接]
发表于 2022-3-31 21:23:27 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 zyj1214 于 2022-3-31 21:24 编辑

class x():
    def __init__(self,a,b):
        self.k=a
        self.k1=b
    def a(self):
        a=3
        b=5
        x2=b-a
        print("a函数:",x2)
    def b(self):
        x1=self.k+self.k1
        print("b函数",x1)
    def c(self):
        x2=self.k*self.k1
        return x2
    def d(self):
        i=1+1
        print(self.k)
    def e(self):
        print(self.k1)
i=7
i1=3
a=x(i,i1)
a.b()
print(a.b())
#打印结果
b函数 10    #为什么这里没有默认的返回值None
b函数 10    #而这里用print(a.b())会有默认的返回值None,我想知道原因?
None
>>>
最佳答案
2022-3-31 21:38:59
zyj1214 发表于 2022-3-31 21:35
print(a.b())  #有什么办法不让返回值打印出来吗?


没有办法,它一定会打印表达式的值,也就是你要么用 a.b(),

要么在函数里面不要打印,将值返回来用print(a.b()),有多个返回值用 print(*a.b())
class x():
    def __init__(self,a,b):
        self.k=a
        self.k1=b
    def a(self):
        a=3
        b=5
        x2=b-a
        print("a函数:",x2)
    def b(self):
        x1=self.k+self.k1
        return "b函数",x1
    def c(self):
        x2=self.k*self.k1
        return x2
    def d(self):
        i=1+1
        print(self.k)
    def e(self):
        print(self.k1)
i=7
i1=3
a=x(i,i1)
#  a.b()
print(*a.b())
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-3-31 21:28:35 | 显示全部楼层
print("b函数",x1) 是函数的执行过程, 得到的返回值是函数的执行结果,

你的函数没有 return,所以默认返回了 None,print(a.b()) 会将函数的返回值打印出来。

而 a.b() 不会看到函数的返回值。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-31 21:35:05 | 显示全部楼层
isdkz 发表于 2022-3-31 21:28
print("b函数",x1) 是函数的执行过程, 得到的返回值是函数的执行结果,

你的函数没有 return,所以默认 ...


print(a.b())  #有什么办法不让返回值打印出来吗?小白,不太懂!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-31 21:38:59 | 显示全部楼层    本楼为最佳答案   
zyj1214 发表于 2022-3-31 21:35
print(a.b())  #有什么办法不让返回值打印出来吗?


没有办法,它一定会打印表达式的值,也就是你要么用 a.b(),

要么在函数里面不要打印,将值返回来用print(a.b()),有多个返回值用 print(*a.b())
class x():
    def __init__(self,a,b):
        self.k=a
        self.k1=b
    def a(self):
        a=3
        b=5
        x2=b-a
        print("a函数:",x2)
    def b(self):
        x1=self.k+self.k1
        return "b函数",x1
    def c(self):
        x2=self.k*self.k1
        return x2
    def d(self):
        i=1+1
        print(self.k)
    def e(self):
        print(self.k1)
i=7
i1=3
a=x(i,i1)
#  a.b()
print(*a.b())
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-5 17:40:19 | 显示全部楼层
只看到10
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-28 02:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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