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解析yaml文件过程详解

YAML语法规则: http://www.ibm.com/developerworks/cn/xml/x-cn-yamlintro/ 下载PyYAML: http://www.yaml....

浅谈Python类里的__init__方法函数,Python类的构造函数

如果某类里没有__init__方法函数,通过类名字创建的实例对象为空,切没有初始化;如果有此方法函数,通常作为类的第一个方法函数,有点像C++等语言里的构造函数。 class Ca:...

python 写入csv乱码问题解决方法

需求背景 最近为公司开发了一套邮件日报程序,邮件一般就是表格,图片,然后就是附件。附件一般都是默认写到txt文件里,但是PM希望邮件里的附件能直接用Excel这种软件打开,最开始想保存...

python通过百度地图API获取某地址的经纬度详解

python通过百度地图API获取某地址的经纬度详解

前言 这几天比较空闲,就接触了下百度地图的API(开发者中心链接地址:http://developer.baidu.com/),发现调用还是挺方便的,本文将给大家详细的介绍关于pytho...

利用selenium 3.7和python3添加cookie模拟登陆的实现

利用selenium 3.7和python3添加cookie模拟登陆的实现

前言 随着Python3的普及,Selenium3也跟上了行程。而Selenium3最大的变化是去掉了Selenium RC,另外就是Webdriver从各自浏览器中脱离,必须单独下载。...