Most viewed recipes tagged "list"http://code.activestate.com/recipes/tags/list/views/2017-03-03T14:13:14-08:00ActiveState Code RecipesFind Multiple Elements In a List (Python)
2011-11-05T23:40:41-07:00Alexander James Wallarhttp://code.activestate.com/recipes/users/4179768/http://code.activestate.com/recipes/577943-find-multiple-elements-in-a-list/
<p style="color: grey">
Python
recipe 577943
by <a href="/recipes/users/4179768/">Alexander James Wallar</a>
(<a href="/recipes/tags/enumerate/">enumerate</a>, <a href="/recipes/tags/find/">find</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/search/">search</a>, <a href="/recipes/tags/search_list/">search_list</a>).
</p>
<p>This algorithm searches for more than one element in a list. The input is a list that you want to search through and a list of elements that you want to search for. The output is a multidimensional list with the positions of the elements you are searching for in the search list in the order that you listed them. </p>
Python add/set attributes to list (Python)
2015-09-29T16:28:46-07:00webby1111http://code.activestate.com/recipes/users/4192908/http://code.activestate.com/recipes/579103-python-addset-attributes-to-list/
<p style="color: grey">
Python
recipe 579103
by <a href="/recipes/users/4192908/">webby1111</a>
(<a href="/recipes/tags/attributes/">attributes</a>, <a href="/recipes/tags/class/">class</a>, <a href="/recipes/tags/dictionary/">dictionary</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/subclass/">subclass</a>).
Revision 3.
</p>
<h4 id="python-attribute-listhttpsgithubcomwebby1111python-attribute-list"><a href="https://github.com/webby1111/Python-Attribute-List">Python Attribute List</a></h4>
<p>Add/set attributes to python lists.</p>
<p>A google search for "add attributes to python lists" yields no good stackoverflow answer,
hence the need for this.</p>
<p>Useful for machine learning stuff where you need labeled feature vectors. </p>
<p>This technique can be easily adapted for other built-ins (e.g. int).</p>
<h5 id="the-problem">The Problem</h5>
<pre class="prettyprint"><code>a = [1, 2, 4, 8]
a.x = "Hey!" # AttributeError: 'list' object has no attribute 'x'
</code></pre>
<h5 id="the-solution">The Solution</h5>
<pre class="prettyprint"><code>a = L(1, 2, 4, 8)
a.x = "Hey!"
print a # [1, 2, 4, 8]
print a.x # "Hey!"
print len(a) # 4
# You can also do these:
a = L( 1, 2, 4, 8 , x="Hey!" ) # [1, 2, 4, 8]
a = L( 1, 2, 4, 8 )( x="Hey!" ) # [1, 2, 4, 8]
a = L( [1, 2, 4, 8] , x="Hey!" ) # [1, 2, 4, 8]
a = L( {1, 2, 4, 8} , x="Hey!" ) # [1, 2, 4, 8]
a = L( [2 ** b for b in range(4)] , x="Hey!" ) # [1, 2, 4, 8]
a = L( (2 ** b for b in range(4)) , x="Hey!" ) # [1, 2, 4, 8]
a = L( 2 ** b for b in range(4) )( x="Hey!" ) # [1, 2, 4, 8]
a = L( 2 ) # [2]
</code></pre>
Flattening an arbitrarily nested list in Python (Python)
2014-10-05T21:44:45-07:00Vasudev Ramhttp://code.activestate.com/recipes/users/4173351/http://code.activestate.com/recipes/578948-flattening-an-arbitrarily-nested-list-in-python/
<p style="color: grey">
Python
recipe 578948
by <a href="/recipes/users/4173351/">Vasudev Ram</a>
(<a href="/recipes/tags/algorithm/">algorithm</a>, <a href="/recipes/tags/algorithms/">algorithms</a>, <a href="/recipes/tags/flatten/">flatten</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/lists/">lists</a>, <a href="/recipes/tags/python/">python</a>).
</p>
<p>This is a recipe to flatten a Python list which may have nested lists as items within it. It works for lists that have a maximum depth of nesting roughly equal to the recursion depth limit of Python, which is set to 1000 by default, though it can be increased with sys.setrecursionlimit().</p>
Python 2.7 Linked List vs List (Python)
2010-08-13T04:05:42-07:00Jack Trainorhttp://code.activestate.com/recipes/users/4076953/http://code.activestate.com/recipes/577355-python-27-linked-list-vs-list/
<p style="color: grey">
Python
recipe 577355
by <a href="/recipes/users/4076953/">Jack Trainor</a>
(<a href="/recipes/tags/educational/">educational</a>, <a href="/recipes/tags/list/">list</a>).
</p>
<p>Linked list implementation based on Python 2.7 collections.MutableSequence with a few benchmarks comparing the linked list with the built-in list type.</p>
Random Binary List (Python)
2011-11-09T19:38:14-08:00Alexander James Wallarhttp://code.activestate.com/recipes/users/4179768/http://code.activestate.com/recipes/577944-random-binary-list/
<p style="color: grey">
Python
recipe 577944
by <a href="/recipes/users/4179768/">Alexander James Wallar</a>
(<a href="/recipes/tags/base/">base</a>, <a href="/recipes/tags/binary/">binary</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/math/">math</a>, <a href="/recipes/tags/numbers/">numbers</a>, <a href="/recipes/tags/python/">python</a>, <a href="/recipes/tags/random/">random</a>, <a href="/recipes/tags/random_binary_list/">random_binary_list</a>).
</p>
<p>This recipe returns a list of size n such that the contents of the returned list are random 0s and 1s. It returns a random binary list of size n.</p>
Get multiple elements from a list (Python)
2011-11-21T06:41:57-08:00Alexander James Wallarhttp://code.activestate.com/recipes/users/4179768/http://code.activestate.com/recipes/577953-get-multiple-elements-from-a-list/
<p style="color: grey">
Python
recipe 577953
by <a href="/recipes/users/4179768/">Alexander James Wallar</a>
(<a href="/recipes/tags/get/">get</a>, <a href="/recipes/tags/getvar/">getvar</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/python/">python</a>, <a href="/recipes/tags/retrieve/">retrieve</a>, <a href="/recipes/tags/retrieving/">retrieving</a>).
</p>
<p>This code lets you retrieve multiple elements from a list at one time</p>
List comparison, difference and more using set & frozenset (Python)
2012-11-01T10:30:58-07:00Scott S-Allenhttp://code.activestate.com/recipes/users/4181178/http://code.activestate.com/recipes/578310-list-comparison-difference-and-more-using-set-froz/
<p style="color: grey">
Python
recipe 578310
by <a href="/recipes/users/4181178/">Scott S-Allen</a>
(<a href="/recipes/tags/compare/">compare</a>, <a href="/recipes/tags/contain/">contain</a>, <a href="/recipes/tags/difference/">difference</a>, <a href="/recipes/tags/lambda/">lambda</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/remove/">remove</a>, <a href="/recipes/tags/set/">set</a>, <a href="/recipes/tags/union/">union</a>).
</p>
<p>Python has a powerful suite of tools for comparing lists by way of sets and frozensets. Here are a few examples and conveniences that many newcomers, even a few seasoned developers, are unaware.</p>
Python Multidimensional List Searcher (Python)
2011-10-29T22:21:39-07:00Alexander James Wallarhttp://code.activestate.com/recipes/users/4179768/http://code.activestate.com/recipes/577929-python-multidimensional-list-searcher/
<p style="color: grey">
Python
recipe 577929
by <a href="/recipes/users/4179768/">Alexander James Wallar</a>
(<a href="/recipes/tags/element/">element</a>, <a href="/recipes/tags/elements/">elements</a>, <a href="/recipes/tags/find/">find</a>, <a href="/recipes/tags/finder/">finder</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/python/">python</a>, <a href="/recipes/tags/search/">search</a>).
</p>
<p>This module/function lets you find a 2 dimensional list of indices for elements you are looking for in a super list.
Example:</p>
<p>find([1,1,1,2,1,2,3,3],[1,2,3])</p>
<p>returns: [[0, 1, 2, 4], [3, 5], [6, 7]]</p>
Sorting a list of dictionary based on a key value (Python)
2008-08-20T03:30:37-07:00riteshnhttp://code.activestate.com/recipes/users/4166555/http://code.activestate.com/recipes/576433-sorting-a-list-of-dictionary-based-on-a-key-value/
<p style="color: grey">
Python
recipe 576433
by <a href="/recipes/users/4166555/">riteshn</a>
(<a href="/recipes/tags/dictionary/">dictionary</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/sorting/">sorting</a>).
</p>
<p>Here is a quick and dirty way to sort a list of dictionary based on a key value.</p>
Get a list from a ConfigParser option (Python)
2011-05-13T13:53:56-07:00Georges Martinhttp://code.activestate.com/recipes/users/4177973/http://code.activestate.com/recipes/577694-get-a-list-from-a-configparser-option/
<p style="color: grey">
Python
recipe 577694
by <a href="/recipes/users/4177973/">Georges Martin</a>
(<a href="/recipes/tags/configparser/">configparser</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/option/">option</a>).
Revision 2.
</p>
<p>Return a list from a ConfigParser option. By default, split on a comma and strip whitespaces.</p>
Flattening an arbitrarily deep list (or any iterator) (Python)
2012-04-03T17:13:35-07:00Garretthttp://code.activestate.com/recipes/users/4181290/http://code.activestate.com/recipes/578092-flattening-an-arbitrarily-deep-list-or-any-iterato/
<p style="color: grey">
Python
recipe 578092
by <a href="/recipes/users/4181290/">Garrett</a>
(<a href="/recipes/tags/flatten/">flatten</a>, <a href="/recipes/tags/iterator/">iterator</a>, <a href="/recipes/tags/itertools/">itertools</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/python/">python</a>, <a href="/recipes/tags/tuple/">tuple</a>).
Revision 6.
</p>
<p>What if you had a list like this: [1, -10, [1,2,[3,4]], xrange(200)], and you just wanted to go through each element in order (wanted it to return a simple list of [1,-10,1,2,3,4,1,2,3,4...199])</p>
<p>I've seen a couple of attempts to flatten arbitrarily deep lists. Many of them involve recursion, like this one: <a href="http://rightfootin.blogspot.com/2006/09/more-on-python-flatten.html" rel="nofollow">http://rightfootin.blogspot.com/2006/09/more-on-python-flatten.html</a></p>
<p>Recursion is generally considered non-pythonic (at least to my knowledge), so I have used one which just involves simple iterators instead. Also, recursion will fail if the list is too deep (so it wouldn't really be arbitrary, would it?).</p>
Flatten a list (or list of lists, etc.) (Python)
2011-03-01T03:46:26-08:00Sunjay Varmahttp://code.activestate.com/recipes/users/4174115/http://code.activestate.com/recipes/577255-flatten-a-list-or-list-of-lists-etc/
<p style="color: grey">
Python
recipe 577255
by <a href="/recipes/users/4174115/">Sunjay Varma</a>
(<a href="/recipes/tags/extend/">extend</a>, <a href="/recipes/tags/flatten/">flatten</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/optimization/">optimization</a>, <a href="/recipes/tags/python/">python</a>, <a href="/recipes/tags/smart/">smart</a>).
Revision 2.
</p>
<p>I created this function sometime ago for my own purposes. It simply flattens a list.</p>
<p>Check out the first comment for another version of someone else's design.</p>
Generate List of Numbers from Hyphenated and comma separeted string like "1-5,25-30,4,5" (Python)
2010-07-01T02:08:09-07:00Siddhant Sanyamhttp://code.activestate.com/recipes/users/4174317/http://code.activestate.com/recipes/577279-generate-list-of-numbers-from-hyphenated-and-comma/
<p style="color: grey">
Python
recipe 577279
by <a href="/recipes/users/4174317/">Siddhant Sanyam</a>
(<a href="/recipes/tags/hypen/">hypen</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/range/">range</a>).
</p>
<p>This function takes a range in form of "a-b" and generate a list of numbers between a and b inclusive.
Also accepts comma separated ranges like "a-b,c-d,f" will build a list which will include numbers from a to b, a to d and f
Example:
hyphen_range('54-78')
hyphen_range('57-78,454,45,1-10')
hyphen_range('94-100,1052,2-50')</p>
User List Subclass (Python)
2008-08-18T09:26:07-07:00nosklohttp://code.activestate.com/recipes/users/4166478/http://code.activestate.com/recipes/576428-user-list-subclass/
<p style="color: grey">
Python
recipe 576428
by <a href="/recipes/users/4166478/">nosklo</a>
(<a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/slices/">slices</a>, <a href="/recipes/tags/subclass/">subclass</a>, <a href="/recipes/tags/__getitem__/">__getitem__</a>).
Revision 2.
</p>
<p>As subclassing list has a problem when using __getitem__, __delitem__ and __setitem__ methods with slices (they don't get called because parent implements __getslice__, __delslice__ and __setslice__ respectively), I've coded this UserList class that is a subclass of list, but overwrites these methods.
By subclassing this class, you can overwrite __getitem__ and it will be called correctly for slices.</p>
Fast Indexing functions (greater than, less than, equal to, and not equal to) (Python)
2012-03-13T16:21:36-07:00Garretthttp://code.activestate.com/recipes/users/4181290/http://code.activestate.com/recipes/578071-fast-indexing-functions-greater-than-less-than-equ/
<p style="color: grey">
Python
recipe 578071
by <a href="/recipes/users/4181290/">Garrett</a>
(<a href="/recipes/tags/index/">index</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/list_comprehension/">list_comprehension</a>, <a href="/recipes/tags/numpy/">numpy</a>, <a href="/recipes/tags/python/">python</a>).
Revision 2.
</p>
<p>Oftentimes you want to find the index of a list-like object. Numpy arrays, for example, do not have a index member function. These get the job done quickly.</p>
<p>Note: these do not raise exceptions, instead they return -1 on error. You should change that if you want different behavior.</p>
List with fast membership test (__contains__) (Python)
2010-04-18T05:52:57-07:00Paul Bohmhttp://code.activestate.com/recipes/users/4173615/http://code.activestate.com/recipes/577185-list-with-fast-membership-test-__contains__/
<p style="color: grey">
Python
recipe 577185
by <a href="/recipes/users/4173615/">Paul Bohm</a>
(<a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/subclass/">subclass</a>).
Revision 3.
</p>
<p>Just a list subclass with a fast hash based __contains__ provided by a Set. Inheriting from list was far more work than I had anticipated AND the code below is still buggy.</p>
<p>Still, this provides O(1) indexed access and O(1) contains. If you use this expect the slicing code to be broken despite the attempts to get it right. Fixes graciously accepted!</p>
Nest a flat list (Python)
2010-02-25T03:50:09-08:00Sander Evershttp://code.activestate.com/recipes/users/4173111/http://code.activestate.com/recipes/577061-nest-a-flat-list/
<p style="color: grey">
Python
recipe 577061
by <a href="/recipes/users/4173111/">Sander Evers</a>
(<a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/nest/">nest</a>, <a href="/recipes/tags/nested/">nested</a>, <a href="/recipes/tags/unflatten/">unflatten</a>).
Revision 2.
</p>
<p>Turn a flat list into a nested list, with a specified number of lists per nesting level.</p>
Flatten a list (Python)
2010-06-18T03:45:20-07:00Giannis Fysakishttp://code.activestate.com/recipes/users/4174072/http://code.activestate.com/recipes/577250-flatten-a-list/
<p style="color: grey">
Python
recipe 577250
by <a href="/recipes/users/4174072/">Giannis Fysakis</a>
(<a href="/recipes/tags/flatten/">flatten</a>, <a href="/recipes/tags/list/">list</a>).
Revision 3.
</p>
<p>Flatten a list </p>
Fixed Lengh List (Python)
2014-01-24T15:27:25-08:00Hirohttp://code.activestate.com/recipes/users/4184239/http://code.activestate.com/recipes/578813-fixed-lengh-list/
<p style="color: grey">
Python
recipe 578813
by <a href="/recipes/users/4184239/">Hiro</a>
(<a href="/recipes/tags/length/">length</a>, <a href="/recipes/tags/list/">list</a>).
Revision 2.
</p>
<p>In some applications, it's advantageous to be able to define a fixed length list.</p>
<p>The class provides all features as python internal type: list</p>
<p>The main focus of <strong>fixed length</strong> list is only keep certain number of items. "overflow" items will be discarded.</p>
Tkinter draggable list V2 (Python)
2017-03-03T14:13:14-08:00Miguel Martínez Lópezhttp://code.activestate.com/recipes/users/4189907/http://code.activestate.com/recipes/580748-tkinter-draggable-list-v2/
<p style="color: grey">
Python
recipe 580748
by <a href="/recipes/users/4189907/">Miguel Martínez López</a>
(<a href="/recipes/tags/draggable/">draggable</a>, <a href="/recipes/tags/list/">list</a>, <a href="/recipes/tags/tkinter/">tkinter</a>).
Revision 3.
</p>
<p>This version use tkinter frame instead of ttk frame.</p>
<p>This next link is version 1 (It's the same code but it uses ttk frame):</p>
<p><a href="https://code.activestate.com/recipes/580717-sortable-megawidget-in-tkinter-like-the-sortable-w/" rel="nofollow">https://code.activestate.com/recipes/580717-sortable-megawidget-in-tkinter-like-the-sortable-w/</a></p>