Home  >  Article  >  Backend Development  >  How to reduce loop levels and indentation using Python

How to reduce loop levels and indentation using Python

高洛峰
高洛峰Original
2017-03-07 15:52:431491browse

The example of this article analyzes Python's techniques for reducing loop levels and indentation. Share it with everyone for your reference, the details are as follows:

We know that colons and indents in Python represent braces. Writing this way can save a lot of lines of code, but it can be more optimized and reduce loops as much as possible. The level and indentation make the code look more concise and the logic clearer. This is not only true for the Python language, but also for other languages.

How to reduce loop levels and indentation using Python

As shown in the picture, there are two pieces of Python code. The functions to be achieved by the two pieces before and after are the same, but the second piece is obviously more readable and the logic is clearer. . When many loops are nested, you can actually use "reverse thinking" and use continue to jump out of the loop that does not meet the conditions, instead of continuing to execute when it is established, which will only deepen the level of the loop.

The following is the Python code in the illustration:

"""优化前"""
for item in items:
 if is_for_sale(item):
 cost = compute_cost(item)
 if cost <= wallet.money:
  buy(item)
"""优化后"""
for item in items:
 if not is_for_sale(item):
 continue
 cost = compute_cost(item)
 if cost > wallet.money:
 continue
 buy(item)

This reduces the level of loop nesting, making it more readable and logical It's more intuitive and doesn't have as much indentation.

For more related articles on how to use Python to reduce loop levels and indentation, please pay attention to the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn