Python中文
首页
教程
问答
标签
搜索
登录
注册
一个不涉及重要代码的forloop如何改变程序输出?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在处理一个相对较大的python文件,并且正在添加下一个重要特性。但是,我注意到插入任何<code>for</code>循环都会改变程序的输出。你知道吗</p> <p>为了测试这一点,我加入了以下循环:</p> <pre><code>for fff in range(2): print 'test' </code></pre> <p>变量<code>fff</code>不会出现在代码的其他地方。输出通过一个名为<code>trueRepeats</code>的列表进行迭代,这显然不是此代码所涉及的(也不是任何变量)。然而,不管我把这个循环放在代码的什么地方——甚至在声明<code>trueRepeats</code>之前;即使是导入之后执行的第一个代码,输出也会改变。你知道吗</p> <p><strong>编辑:</strong>这里是完整的源代码:<a href="https://bitbucket.org/teamawesome/pyredund/src/e97bfa2e8595c73164076c6a4a9d18b8e98e49f4/tree_repeat.py?at=master" rel="nofollow">BitBucket</a>。我试图添加循环的原始位置在注释块4下,但正如前面提到的,它似乎在其他许多地方引起了问题。我在查档案”示例.py“也在存储库中。如果没有循环,程序将返回两个重复,分别在第{4,7}行和第{1,10}行。对于循环,它返回{2,3}和{1,10}处的实例。你知道吗</p> <p>我知道代码不多,但在我能够诊断问题是什么之前,我甚至不知道这是怎么可能的,这是我的问题:在python中是什么使得独立的for循环能够影响只涉及循环不涉及的变量的输出?你知道吗</p> <p><strong>编辑2:</strong>当我谈论输出更改时,我不是在谈论循环打印出的两个“测试”行。这些可以被<code>pass</code>代替,但我觉得<code>print</code>的副作用会更少。你知道吗</p> <p><strong>编辑3:</strong>进一步调查后,这个问题比<code>for</code>循环要深入得多,因此这个问题可能不太适合StackOverflow,因为真正的问题似乎没有那么集中。注释行:</p> <pre><code>if flag == 5: print "TEST: " + str(key) </code></pre> <p>也改变了程序输出,就像注释掉一行的一部分一样,它只是将文字<code>+ "Parent: "</code>附加到正在打印的字符串的末尾。像向字符串添加文字这样的副作用似乎并不正常,因此我需要进一步研究,以找出python行为如此奇怪的原因。你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>不管剩下的代码是什么,这个循环都会输出两次“test”。 为什么?因为for循环不需要变量,“fff”只是一个用于迭代的占位符。 我可以有这个代码:</p> <pre><code>def add(a, b): print a + b add(5, 5) for fff in range(2): print "test" </code></pre> <p>结果是:</p> <pre><code>10testtest </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
当用户用PYTHON设置一个或一个不带值的URL时,他们怎么能输入一个/a的代码呢?
4 回答
当用户登录到站点时,如何显示不同的导航栏
4 回答
当用户登录时,在Flask中向用户显示处理结果
1 回答
当用户的Flask会话结束时,我如何从Redis后端中移除所有Celery结果?
2 回答
当用户的Okta配置文件字段当前为blan时,更新该字段
1 回答
当用户的付款逾期2天时,从Django模型检索数据
3 回答
当用户的消息以问号结尾时,如何让机器人说些什么?
3 回答
当用户的系统上可能也安装了Python 2.7时,如何在用户的系统上运行Python 3脚本?
1 回答
当用户确定打印数量时,使用Matplotlib打印动画
9 回答
当用户离开时是否可以删除整个网页?
3 回答
当用户给出一个单词时如何打印?
9 回答
当用户继续更改TKin中的值(使用trace方法)时,使用Entry并更新输入的条目
3 回答
当用户编辑表单字段时,从Django时间字段中删除秒数
4 回答
当用户被更改时,消息不会来自web套接字
1 回答
当用户访问表单时,如何使表单为只读,而不具有更改权限
3 回答
当用户试图更改对象的值时,使用描述符类引发RuntimeError
5 回答
当用户调整GUI的大小时,是否有方法更改GUI内容的大小?
8 回答
当用户调整风的大小时,pythontkinter小部件的大小会不均匀
5 回答
当用户购买某个类别时,是否查找其他类别的销售?
3 回答
当用户转到上一页时,Django和芹菜插入操作
6 回答