我试图跟踪一段代码的执行,该代码包含一个for loop
,其中有两个if conditionals
。但是我需要帮助来理解在python中for loops
是如何执行的。在
请考虑以下示例:
numAs = 0
numEs = 0
aStr1 = 'abcdefge'
def someFunc(aString):
1. for i in range(len(aString)):
2. if s[i] == 'a':
3. numAs += 1
4. continue
5. if s[i] == 'e':
6. numEs += 1
7. if numEs > numAs:
8. break
9. print(someFunc(aStr1))
问题:使用aStr
作为参数,在上面的代码中第1行将执行多少次?在
我的理解是第一行。将只执行一次。第2行和第5行将根据传递的字符串执行多次。当函数遇到continue
语句时,它返回到第2行并运行它。请确认或纠正我的想法。在
谢谢
你对代码的理解是正确的。在
FWIW,使用
python -m trace trace some_script.py
跟踪脚本的执行很容易,或者可以使用python -m trace count some_script.py
查看执行行计数。在例如,后一个调用trace会产生:
相关问题 更多 >
编程相关推荐