python_wiki:list_comprehensions

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

python_wiki:list_comprehensions [2018/08/03 00:58]
billdozor [The Code]
python_wiki:list_comprehensions [2019/05/25 23:50]
Line 1: Line 1:
-====== List Comprehensions ====== 
- 
-**General Information** 
- 
-List comprehensions are a way to create lists based on lists. 
- 
-They cut out a step in which you would create an intermediate list just to create a new list. 
- 
-**Checklist** 
-  * Python 2 or 3 
- 
----- 
- 
-====== Usage ====== 
- 
-FIXME -> Fill out list comprehension example and code. 
- 
-Using the code snippet.  
-<code bash> 
-chmod +x list-comp.py 
-./list-comp.py 
-  
-# Example output 
-('The tuple is: ', ('centos', 'ubuntu', 'fedora', 'windows', 'arch', 'freebsd')) 
-('The nix os list is: ', ['centos', 'ubuntu', 'fedora', 'arch', 'freebsd']) 
-</code> 
- 
----- 
- 
-====== The Code ====== 
- 
-**List Comprehension Syntax** 
-<code python> 
-new_list = [x for x in iterable if filter] 
-</code> 
- 
-\\ 
-**List Comprehension Example** 
-<code python list-comp.py> 
-#!/usr/bin/python 
- 
-# Tuple with a list of OS's 
-my_tuple = ('centos', 'ubuntu', 'fedora', 'windows', 'arch', 'freebsd') 
- 
-# Create a new list based off of the tuple, exclude 'windows' 
-nix_os = [entry for entry in my_tuple if entry != 'windows'] 
- 
-print("The tuple is: ", my_tuple) 
-print("The nix os list is: ", nix_os) 
-</code> 
- 
-\\ 
-The long way **without list comprehensions** of the above code is 
-<code python> 
-#!/usr/bin/python 
- 
-# Tuple with a list of OS's 
-my_tuple = ('centos', 'ubuntu', 'fedora', 'windows', 'arch', 'freebsd') 
- 
-# Create a new list based off of the tuple, exclude 'windows' 
-# This time, do not use a list comprehension 
-nix_os = [] 
-for entry in my_tuple: 
-  if entry != 'windows': 
-    nix_os.append(entry) 
- 
-print("The tuple is: ", my_tuple) 
-print("The nix os list is: ", nix_os) 
-</code> 
- 
----- 
  
  • python_wiki/list_comprehensions.txt
  • Last modified: 2019/05/25 23:50
  • (external edit)