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普通字符串中 在Python中,我们用'\'来转义某些普通字符,使其成为特殊字符,比如 In [1]: print('abc\ndef') # '\n'具有换行的作用...

python设定并获取socket超时时间的方法

python写法 import socket def test_socket_timeout(): s = socket.socket(socket.AF_INET,...

python函数的万能参数传参详解

python函数的万能参数传参详解

我们通过一个简单的事例来展示一下函数的万能参数,我们先写一个最简单的函数 def test(*args,**kwargs): print(args,kwargs) 然后定义两个变量...

Python查找文件中包含中文的行方法

前言 近几天在做多语言版本的时候再次发现,区分各种语言真的是一件比较困难的事情,上一次做中文提取工具的就花了不少时间,这次决定用python试一试,结果写起来发现真是方便不少,自己整理了...

python结合selenium获取XX省交通违章数据的实现思路及代码

python结合selenium获取XX省交通违章数据的实现思路及代码

前言:   目前在研究易信公众号,想给公众号增加一个获取个人交通违章的查询菜单,通过点击返回查询数据。以下是实施过程。 一、首先,用火狐浏览器打开XX省交管网,分析页面信息:   可以...