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

yipeiwu_com7年前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设计】。

相关文章

DJANGO-URL反向解析REVERSE实例讲解

DJANGO-URL反向解析REVERSE实例讲解

解决path中带参数的路径。 reverse(viewname,urlconf=None,args=None,Kwargs=None,current_app=None) book/vie...

自学python的建议和周期预算

如果是报名培训班的话,学习的速度可能会更快一些,毕竟是自己花钱了。 自学python爬虫方法: 首先要掌握一些有关爬虫的基础知识,基本的要知道什么是爬虫?为什么要爬虫?数据是从哪里得来的...

pyqt5利用pyqtDesigner实现登录界面

本文实例为大家分享了pyqt5利用pyqtDesigner实现登录界面的具体代码,供大家参考,具体内容如下 为便于操作 界面和逻辑分离 逻辑类: import sys import...

django中media媒体路径设置的步骤

django中media媒体路径设置的步骤

1、创建一个app02, 并在settings.py里面设置 2、在settings.py里面设置媒体文件保存的路径 from django.contrib import admi...

python将图片文件转换成base64编码的方法

本文实例讲述了python将图片文件转换成base64编码的方法。分享给大家供大家参考。具体实现方法如下: import base64 f=open(r'c:\jb51.gif','...