使用行上的类导入文件

2024-09-28 14:56:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在导入一个类模块,然后打开一个文本文件。也许我没有正确理解类,但我在想,如果我调用init构造函数,它将从文件中获取信息并将其转换为该格式。我在这个网站上读到了很多问题,询问如何做到这一点,关于人们在阅读文本文件和在文本文件上使用构造函数时遇到困难的问题,但还没有看到任何将导入文件和类组件结合起来的答案。以下是我的课程代码:

class Apartments:
      def __init__(self,apartNum, rent, rooms, bath):
            self.apartNum=apartNum
            self.rent=rent
            self.rooms=rooms
            self.bath=bath

以下是我要将其导入的文件:

import sys
sys.path.append("/Users/kabe/Desktop/Apartments")

import Apartments

dataFile = open('apartmentData.txt').readlines()

这一点之后的一切都是我尝试过的代码,但不起作用

apartmentsList = []
for line in dataFile:
    strippedLine=line.split()
    apartmentsList.append(Apartments)

for apartment in apartmentsList:
    print(apartment.apartNum + ' ' + apartment.rent + ' ' + apartment.rooms + ' ' + apartment.bath)
openfile()

此代码给出了以下错误:

Traceback (most recent call last):
  File "C:/Users/lortiz/Desktop/Memes/College/homework/l_kennedy_lab8_wk9.py", line 13, in <module>
    print(apartment.apartNum + ' ' + apartment.rent + ' ' + apartment.rooms + ' ' + apartment.bath)
AttributeError: module 'Apartments' has no attribute 'apartNum'

我正在尝试从导入的文本文件中实现如下所示的类对象:

apt_1= Apartments(111,1000,1,1)
apt_2= Apartments(112,2000,2,1)
apt_3= Apartments(113,2500,2,2)
apt_4= Apartments(114,3000,3,2)
apt_5= Apartments(115,3500,3,3)

谢谢


Tags: 文件代码inselfinitlineapt文本文件