# create a list
mylist = ['A', 'B', 'C'] # length (number of elements) len(mylist) 3 # Is 'B' member in my list? >>> 'B' in mylist True if 'B' in mylist: print('yes') # remove element from list
mylist = ['A','B','C'] mylist.remove('B') ['A', 'C']
# in case of multiple elements, 'remove' deletes only the first item
mylist = ['A','B','C','B'] mylist.remove('B') ['A', 'C', 'B'] # remove multiple elements from multiple positions in a list
# remove letters 'B' and 'C' from all positions in a list ( → list comprehension)
mylist = ['A','B','C','D','A','B','C','D'] remove_set = ('B','C')
mylist_reduced = [i for i in mylist if i not in remove_set] # create new reduced list['A', 'D', 'A', 'D'] add (concatenate) lists >>> mylist + ['D','E'] ['A', 'B', 'C', 'D', 'E'] multi-copies of a list (repetition)
>>> 5 * ['A','B'] ['A', 'B', 'A', 'B', 'A', 'B', 'A', 'B', 'A', 'B'] >>> 5 * 'A' 'AAAAA' >>> 5 * ['A'] ['A', 'A', 'A', 'A', 'A'] >>> list1=['D','B','C','A'] >>> list2= ['B','C'] >>>
[i for i in list1 if i not in list2] # keep list order['D', 'A'] >>> list(set(list1) - set(list2)) # ['A', 'D'] loops for element in mylist: print(element) A B C indices (better avoid by using 'in', or a dictionary)
!! Python's 0-based indices start with 0 , not with 1 >>> months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'] >>> months[0] 'Jan'
>>> months[4] 'May'
>>> months[10:] ['Nov', 'Dec'] >>> months[:2] ['Jan', 'Feb'] >>> months[2:10] ['Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct'] >>> months[0:5:2] ['Jan', 'Mar', 'May'] to access list elements by an index starting with 1, simply use a dummy first element 'None'
>>> months = [None, 'Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'] >>> months[1] 'Jan'
>>> months[12] 'Dez'
get index >>> months.index('May') 5 In short: 0-based is confusing when referring to objects: list-elements, items, fields, or boxes. But it make sense as a pointer (address) in time and data-streams (processing long files), referring to the start-position, not to the item, read more.
min / max >>> min([4,3,8]) 3 >>> max([4,3,8]) 8 see more: → mean, median, ...
# get union, intersection, difference of lists: # convert to list to set and use list operators import sets s1 = set(['A', 'B', 'C']) s2 = set(['B', 'C','D']) s1 & s2 # Intersection (overlap between both lists)set(['C', 'B']) s1 | s2 # Unionset(['A', 'C', 'B', 'D']) s1 ^ s2 # (symmetric) differenceset(['A', 'D']) |
Data structures >