python从入门到精通(黑马P124)

跟着敲报错了:

from typing import List

from data_define import Record


class FileReader:
    def read_data(self) -> list[Record]:
        """读取文件的数据,读到的每一条数据都转换为REcord对象,将他们都封装到list内再返回"""
        pass


class TextFileReader(FileReader):
    def __init__(self, path):
        self.path = path  # 定义成员变量记录文件的路径

    # 复写(实现抽象方法)父类的方法
    def read_data(self) -> list[Record]:
        f = open(self.path, "r", encoding="UTF-8")
        for line in f.readlines():
            # line = line.strip()  # 直接读会出现一行空格,用strip()消除读取到的每一行数据中的\n
            print(line)


if __name__ == '__main__':
    text_file_reader = TextFileReader("D:/2011年1月销售数据.txt")
    text_file_reader.read_data()

报错如下:
TypeError: 'type' object is not subscriptable

将list[Record]改成list解决了

但是为什么报错我也没弄懂,搜了一下:报错处理:'type' object is not subscriptable
原先使用Python3.9.6开发的项目,打包后在其他人电脑上无法运行。后检查发现,对方电脑为Win7版本,不支持Python3.9.6。而后,转用Python3.6.9重新改写项目。配置好新环境后运行项目

我个人感觉可能是版本问题,希望在以后的学习中能得以解决

  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值