import math def addVectors(a, b): return [a1 + b1 for a1, b1 in zip(a, b)] def subtractVectors(a, b): return [a1 - b1 for a1, b1 in zip(a, b)] def sumOfvectors(a): return reduce(addVectors, a) def multiplyVectors(a, s): return [a1 * s for a1 in a] def meanOfvectors(a): n = float(len(a)) return multiplyVectors(sumOfvectors(a), 1/n) def dot(a, b): return sum(a1 * b1 for a1, b1 in zip(a, b)) def sumOfSquares(a): return dot(a, a) def magnitude(a): return math.sqrt(sumOfSquares(a)) def squaredDistance(a, b): return sumOfSquares(subtractVectors(a, b)) def distance(a, b): return magnitude(subtractVectors(a, b)) x = [[1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3]] print sumOfvectors(x) print meanOfvectors(x) print sumOfSquares(x[0]) print dot(x[0], x[1]) print magnitude(x[0]) print distance(x[0], x[1])
0 Comments
#random library >>> import random >>> # Generate Random numbers ... random.random() 0.08953401474796086 >>> [random.random() for _ in range(4)] [0.530660437033418, 0.1897389287021225, 0.40700491500655256, 0.2646034895738054] >>> # Setting Seed ... random.seed(10) >>> random.random() 0.5714025946899135 >>> # generate random number in desired range ... random.randrange(1,5) 2 >>> # Shuffling values in desired range ... list = range(5) >>> random.shuffle(list) >>> print list [3, 1, 4, 0, 2] >>> >>> # randomly pick one element from a list ... random.choice(list) 0 >>> # Choose sample of elements without replacements ... random.sample(list, 2) [3, 4] >>> # Choose sample of elements with replacements ... [random.choice(range(5)) for _ in range(2)] [1, 1] #re library >>> import re >>> # Look for elements starting with 'a' ... re.match('a', 'alpha') <_sre.SRE_Match object at 0x102a5f578> >>> not re.match('a', 'alpha') False >>> # Search for pattern ... re.search('al', 'alpha') <_sre.SRE_Match object at 0x102a5f578> >>> not re.search('al', 'alpha') False >>> # Split text on specific char ... re.split('[ap]','alpha') ['', 'l', 'h', ''] >>> # Replace substring with new characters ... re.sub('a', 'b', 'alpha') 'blphb >>> # functools Library >>> def exp(base, power): ... return base ** power from functools import partial >>> # Create partial function >>> pow_2 = partial(exp, power = 2) >>> pow_2(3) 9 >>> base_3 = partial(exp,3) >>> base_3(2) 9 >>> #other useful tricks >>> #enumeration example >>> for i, entry in enumerate(entries): print i, entry 0 alpha 1 beta 2 gamma >>> >>> # Zip >>> a = ['a', 'b', 'c'] >>> b = [1, 2 ,3] >>> zip(a, b) [('a', 1), ('b', 2), ('c', 3)] >>> pairs = zip(a, b) >>> #to Unzip >>> a1, b1 = zip(*pairs) >>> a1 ('a', 'b', 'c') >>> # args & kwargs Example >>> def unpack(*args, **kwargs): ... print "unnamed arguments", args ... print "keyword arguments", kwargs ... >>> unpack(10,'a',key1="alpha", key2="beta") unnamed arguments (10, 'a') keyword arguments {'key2': 'beta', 'key1': 'alpha'} >>> |
ArchivesCategories |