Urgent.News

What's breaking now, across thousands of outlets.

Tech

I never fully understood Python for loops until I grasped the range function. Here is what I learnt

I come from a C Programming background, where for loops are very simple. for ( int i = 0 ; i < n ; i ++ ) { // Your fabulous code block } This was intuitively easy to understand. The first part int i = 0 is the initialization (the starting point) for the iterator. It is also nice that this int lives and dies within the scope of this for loop (block-scoped). The second part i < n is the condition…

The author, coming from a C programming background, found for loops intuitive. The syntax follows the pattern int i = 0; i < n; i++ where the initialization, condition, and iteration define the loop's behavior. However, when the author transitioned to Python, they found the for loop definition confusing. A typical Python for loop looks like this: for i in range(10). Initially, it was unclear where the loop started, what was checked, and who incremented what.

Upon further investigation, the author discovered that the Python for loop was syntactic sugar. Under the hood, it is equivalent to the more explicit range(0, 10, 1) definition. The range function creates an object of type range, which is essentially a placeholder indicating the loop's start, end, and increment. It is an immutable sequence object that represents the numbers in the range without storing all of them in memory. Creating a range object takes O(1) space and time, regardless of the range's size.

The author visualized the range function by converting it to a list, which helped solidify their understanding. They demonstrated how to use the range function for incrementing, decrementing, and creating specific number sequences. The author also noted that while Python's for loops offer more capabilities than C's, understanding the range function is crucial for mastering Python's for-in loops, which iterate over collections like lists, tuples, dictionaries, or strings.

Despite the quirks, the author expressed satisfaction with their newfound comprehension of Python's for loops.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Iran Strikes On Amazon Data Centers Caused Permanent Loss of Customer Data

Ars Technica reports: Half a year after Iranian drone strikes knocked out multiple Amazon data centers, the US tech company has acknowledged the permanent loss of some customer data that was hosted in…

  • Amazon confirms permanent loss of customer data after Iranian strikes
  • mec1-az2 in UAE region had entirely lost customer data
  • AWS suspended billing in Bahrain-based data center regions

Bend

  • Bend is a fast language preventing AI errors through proof-checking
  • Compiles to native code, running near C speed on one core
  • Laws.bend governs AI behavior, ensuring error-free execution

More from Thursday 17 September →