python实现用类读取文件数据并计算矩形面积

yipeiwu_com6年前Python基础

1.创建一个类Rectangle,已知a、b求面积,求三角形的面积

2.结合题目一,从题目一文件中读取数据,并采用类的方法,将计算的结果写在另一个文档中。

(1)利用类进行计算一个矩形的面积,已经a、b边长。

class Rectangle:

'''这是关于矩形面积的计算公式,只用给出矩形的长和宽,

调用实例函数,就可以返回所需要的面积'''
number=0

def __init__(self,a,b): # a、b类似C中的形参 或者叫作构造方法
 self.a1=a   # 将形参中的值传入到类模板
 self.b1=b   # 实例变量
 Rectangle.number=Rectangle.number+1
 self.no=Rectangle.number
 
def getArear(self):
 s1=self.a1
 s2=self.b1
 area=s1*s2
 return area

r1=Rectangle(10,20)
print(r1.a1)
s=r1.getArear()
print(s)
print(Rectangle.doc)
print(r1.number)

执行结果:

(2)结合第一题,从文件中读取数据进行计算

class Rectangle:

'''这是关于矩形面积的计算公式,只用给出矩形的长和宽,

调用实例函数,就可以返回所需要的面积'''

number=0

def __init__(self,a,b): # a、b类似C中的形参 或者叫作构造方法
 self.a1=a   # 将形参中的值传入到类模板
 self.b1=b   # 实例变量
   
def getArear(self):
 s1=self.a1
 s2=self.b1
 area=s1*s2
 return area

print(Rectangle.doc)
print('\n')
file1=open('./Test2/file1.txt')
str1=file1.readlines()
file2=open('./Test2/file2.txt',‘w') # 以文件覆盖的形式进行写入
for line in str1:
x=line.split()
r1=Rectangle(int(x[0]),int(x[1])) # 直接调用类定义函数
area=r1.getArear()
print(area) # 调用类变量函数
file2.write(‘面积:%d * %d=\t'%(int(x[0]),int(x[1]))) # 所在行
file2.write(str(area))

file2.write(str(area))

file2.write('\n')

file2.close()

执行结果如下:

这是关于矩形面积的计算公式,只用给出矩形的长和宽,

调用实例函数,就可以返回所需要的面积

200
600
1200
2000
3000

以上这篇python实现用类读取文件数据并计算矩形面积就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python机器学习理论与实战(五)支持向量机

python机器学习理论与实战(五)支持向量机

       做机器学习的一定对支持向量机(support vector machine-SVM)颇为熟悉,因为在深...

python PyTorch参数初始化和Finetune

python PyTorch参数初始化和Finetune

前言 这篇文章算是论坛PyTorch Forums关于参数初始化和finetune的总结,也是我在写代码中用的算是“最佳实践”吧。最后希望大家没事多逛逛论坛,有很多高质量的回答。 参数初...

python 和c++实现旋转矩阵到欧拉角的变换方式

python 和c++实现旋转矩阵到欧拉角的变换方式

在摄影测量学科中,国际摄影测量遵循OPK系统,即是xyz转角系统,而工业中往往使用zyx转角系统。 旋转矩阵的意义:描述相对地面的旋转情况,yaw-pitch-roll对应zyx对应k,...

python判断windows系统是32位还是64位的方法

本文实例讲述了python判断windows系统是32位还是64位的方法。分享给大家供大家参考。具体分析如下: 通常64的windows系统program files文件夹(用来安装应用...

举例讲解Django中数据模型访问外键值的方法

先设置一个关于书本(book)的数据模型: from django.db import models class Publisher(models.Model): name...