Simple Python Debugging with Pdb: Part 2 - Comments

  • Python
  • Thread starter Mark44
  • Start date

Answers and Replies

  • #3
33,923
5,572
Mark, how would you compare Python with other similar languages?
Python is in some respects similar to C, but is a language that is significantly higher in level. Without using any external libraries/modules, you can get permutations and combinations very quickly.

A couple of the features of Python that distinguish it from C and the languages that derive from C are the map() function and list comprehension. map() returns an iterator that will apply some operator to one or more lists (depending on the operator). In the example below, corresponding pairs of numbers are multiplied in two lists to form a new list that contains these products, and then the sum() function is applied to the list to add all of the numbers. In short, the one-line body of the dotprod() function calculates the dot product of the two lists that are in its argument list. Lower-level languages such as C will typically use a for loop to iterate through the lists.


Python:
# dotprod.py -- find the dot product of two vectors
import operator

def dotprod(u, v):
   return sum(map(operator.mul, u, v))

u = [1, 2, -1, 4, 2, 1, -2, 6]
v = [1, 4, -1, 0, 1, 1, -2, 4]

ans = dotprod(u, v)
print("Result is: ", ans)
This code displays 41 as its result.

List comprehension is "A compact way to process all or part of the elements in a sequence and return a list with the results."
Here's an example that works with the list [0, 1, ..., 255] and creates a new list with only the list elements that are evenly divisible by 16.
Python:
#list_comp.py -- simple example of list comprehension
my_list = [x for x in range(256) if x % 16 == 0]
print(my_list)
The print() statement displays the list as [0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208, 224, 240]

I'm sure there are quite a few more differences, but these are just a few that come to mind.
 
  • Like
Likes Greg Bernhardt

Related Threads on Simple Python Debugging with Pdb: Part 2 - Comments

Replies
6
Views
955
Replies
8
Views
908
Replies
10
Views
943
Replies
2
Views
917
  • Last Post
Replies
2
Views
2K
  • Last Post
Replies
6
Views
1K
Replies
6
Views
4K
  • Last Post
Replies
1
Views
566
Replies
18
Views
4K
Replies
3
Views
2K
Top