# Python | Check if list is strictly increasing

The test for monotonic sequence is a utility that has manifold applications in mathematics and hence every sphere related to mathematics. As mathematics and Computer Science generally go parallel, mathematical operations such as checking for strictly increasing sequence can be useful to gather knowledge of. Same argument can be extended for strictly decreasing lists also. Lets discuss certain ways to perform this test.

Method #1 : Using `all() + zip()`
The `all()` generally checks for all the elements fed to it. The task of zip() is to link list beginning from beginning and list beginning from first element, so that a check can be performed on all elements.

 `# Python3 code to demonstrate  ` `# to check for strictly increasing list ` `# using zip() + all() ` ` `  `# initializing list ` `test_list ``=` `[``1``, ``4``, ``5``, ``7``, ``8``, ``10``] ` ` `  `# printing original lists ` `print` `(``"Original list : "` `+` `str``(test_list)) ` ` `  `# using zip() + all() ` `# to check for strictly increasing list ` `res ``=` `all``(i < j ``for` `i, j ``in` `zip``(test_list, test_list[``1``:])) ` ` `  `# printing result ` `print` `(``"Is list strictly increasing ? : "` `+` `str``(res)) `

Output:

```Original list : [1, 4, 5, 7, 8, 10]
Is list strictly increasing ? : True
```

Method #2 : Using `reduce()` + lambda
`reduce()` coupled with lambda can also perform this task of checking for monotonicity. reduce function is used to cumulate the result as True or False, lambda function checks for each index value with next index value.

 `# Python3 code to demonstrate  ` `# to check for strictly increasing list ` `# using reduce() + lambda ` ` `  `# initializing list ` `test_list ``=` `[``1``, ``4``, ``5``, ``7``, ``8``, ``10``] ` ` `  `# printing original lists ` `print` `(``"Original list : "` `+` `str``(test_list)) ` ` `  `# using reduce() + lambda ` `# to check for strictly increasing list ` `res ``=` `bool``(``lambda` `test_list: ``reduce``(``lambda` `i, j: j ``if`  `                 ``i < j ``else` `9999``, test_list) !``=` `9999``) ` ` `  `# printing result ` `print` `(``"Is list strictly increasing ? : "` `+` `str``(res)) `

Output:

```Original list : [1, 4, 5, 7, 8, 10]
Is list strictly increasing ? : True
```

Method #3 : Using `itertools.starmap() + zip() + all()`
Yet another method to perform this task, `starmap()` works in binding the operation with the zipped lists as done in method 1 and `all()` also performs similar task of cumulation of result.

 `# Python3 code to demonstrate  ` `# to check for strictly increasing list ` `# using itertools.starmap() + zip() + all() ` `import` `operator ` `import` `itertools ` ` `  `# initializing list ` `test_list ``=` `[``1``, ``4``, ``5``, ``7``, ``8``, ``10``] ` ` `  `# printing original lists ` `print` `(``"Original list : "` `+` `str``(test_list)) ` ` `  `# using itertools.starmap() + zip() + all() ` `# to check for strictly increasing list ` `res ``=` `all``(itertools.starmap(operator.le,  ` `         ``zip``(test_list, test_list[``1``:]))) ` ` `  `# printing result ` `print` `(``"Is list strictly increasing ? : "` `+` `str``(res)) `

Output:

```Original list : [1, 4, 5, 7, 8, 10]
Is list strictly increasing ? : True
```

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.