首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以在python中将"while True: with x as y:“转换为"while x as y”循环吗?

可以在python中将"while True: with x as y:“转换为"while x as y”循环吗?
EN

Stack Overflow用户
提问于 2015-12-01 02:16:08
回答 1查看 73关注 0票数 0

我想知道是否有可能加入withwhile True循环,因为while True非常简单(一直运行到有东西破坏它),而且有点浪费缩进。

这是一些示例代码,就像我目前正在做的那样:

代码语言:javascript
复制
class Something(object):
    def __init__(self):
        self.num = 5
    def __enter__(self):
        return self
    def __exit__(self, *args):
        pass

while True:
    with Something() as s:
        print s.num

如果可能,我如何将其更改为类似于此的内容?

代码语言:javascript
复制
while Something() as s:
    print s.num
EN

回答 1

Stack Overflow用户

发布于 2015-12-01 02:21:33

不,因为您的建议在一段时间内与grammar语句不兼容:

代码语言:javascript
复制
while_stmt: 'while' test ':' suite ['else' ':' suite]

这是文档化的here。就语法而言,Python不像ruby那样容易破解。

因为它是语言参考的一部分,所以您只能通过修改python源代码来更改它。然后,您必须编译自己的解释器,并且根据定义,您将不再使用python语言。

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

https://stackoverflow.com/questions/34005266

复制
相关文章

相似问题

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