python写一个类 代码_用python写一个解一元二次方程的类

第一步 明确需要的变量

要解一元二次方程,肯定先把它化成一般式:ax^2+bx+c=0,我们需要用到的参数是a,b,c还有一个判别式”▲“ ,可以随意给个名字,我这里给的g。

第二步 创建一个类

类的名字一般首字母大写,然后以冒号结尾,代码如下:

class Equation:

a = int(input('输入a值:'))

b = int(input('输入b值:'))

c = int(input('输入c值:'))

g = 0

这里的a,b,c,g就是创建的类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。

第三步 创建类的方法

类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称, 按照惯例它的名称是 self(可以用其他的)。

第一个方法 计算出判别式的值

在方法里引用变量要用self.+变量名,然后根据python的语法打出计算公式,注意缩进,如下:

def getDiscriminant(self):

print('判别式等于')

print(self.b * self.b - 4 * self.a * self.c)

self.g = self.b * self.b - 4 * self.a * self.c

第二个方法 计算根的值

公式法直接写出来,注意缩进,:

def getRoot1(self):

if self.b * self.b - 4 * self.a * self.c >= 0:

print('第一个实根为:')

print((-self.b + self.g ** 0.5) / (2 * self.a))

else:

print("此方程无实根。")

如果没有实根就直接打印无根就行了。

第二个根也是一样的:

def getRoot2(self):

if self.b * self.b - 4 * self.a * self.c >= 0:

print('第二个实根为:')

print((-self.b - self.g ** 0.5) / (2 * self.a))

else:

return 0

如果无实根,第一个已经打印了,所以我们这里返回0。

最后一步 我们调用这个类

先实例化这个类,再依次访问类的方法,如下:

zxc = Equation()

zxc.getDiscriminant()

zxc.getRoot1()

zxc.getRoot2()

运行结果

c5c19d2a5d5040aad10af2e4ea865a4d.png

总结

创建类,在写出你在整个类要调用的类变量,创建类方法,方法里可创建只在本方法使用的变量,此外注意缩进。最后实例化,访问类属性。

ps:新手学python,第一次写博客,没有排版,没有什么技术含量,纯粹分享学习,希望大佬们指出我的不足之处。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值