首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么要获得矩阵的属性错误__enter__?

为什么要获得矩阵的属性错误__enter__?
EN

Stack Overflow用户
提问于 2019-11-06 14:51:58
回答 2查看 43关注 0票数 1
代码语言:javascript
复制
def save_list():  
  f = open('data.txt', 'w')

  ii = 0

  with itemMatrix[ii] as item:

    f.write(item + '\n')

    ii += 1

这段代码一直给我错误:属性错误,在第5行输入( itemMatrixii作为item:)

为什么会发生这种事,我该怎么解决呢?如果需要更多的代码,请告诉我。

耽误您时间,实在对不起!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-11-06 15:10:10

代码语言:javascript
复制
def save_list():
    with open('data.txt', 'w') as f:
        for item in itemMatrix:
            f.write(f"{item}\n")

(使用F-字符串将元素格式化为换行符)。

票数 1
EN

Stack Overflow用户

发布于 2019-11-06 15:08:04

你可能想写for item in itemMatrix[ii]:

with语句使用上下文管理协议。大致上就是这样。

代码语言:javascript
复制
with obj as instance:
  body(instance)

# is syntactical suger for
instance = obj.__enter__()
try:
    body(instance)
except BaseException as e:
    obj.__exit__(type(e), e, stacktrace)
else:
    obj.__exit__(None, None, None)

如果您想使用with语句,那么itemMatrix[ii]应该有一个enter方法和一个exit方法。请参阅https://www.python.org/dev/peps/pep-0343/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58732820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档