#!/usr/bin/env python # coding: utf-8 # ## Python Basics # In[3]: 1 + 2 * 3 # In[4]: 2**3 # In[9]: x = "Machine" + "Learning" print x # In[10]: x.upper() # In[11]: x.lower() # In[15]: len(x) # In[16]: a = 2 + 3 b = a * 4 c = b - 7 L = [a,b,c] print L # In[19]: M = [10, 2, "a", 3.5] N = L + M print N # In[34]: len(N) # In[20]: N[2] # In[21]: N[:3] # In[22]: N[3:] # In[23]: N[3:6] # In[24]: # This is what a comment looks like fruits = ['apples','oranges','pears','bananas'] for fruit in fruits: print fruit + ' for sale' fruitPrices = {'apples': 2.00, 'oranges': 1.50, 'pears': 1.75} for fruit, price in fruitPrices.items(): if price < 2.00: print '%s cost %f a pound' % (fruit, price) else: print fruit + ' are too expensive!' # In[25]: # Example of python's list comprehension construction: nums = [1,2,3,4,5,6] plusOneNums = [x+1 for x in nums] print "plusOneNums =", plusOneNums oddNums = [x for x in nums if x % 2 == 1] print "oddNums = ", oddNums oddNumsPlusOne = [x+1 for x in nums if x % 2 ==1] print "oddNumsPlusOn = ", oddNumsPlusOne # In[26]: # Dictionaries studentIds = {'knuth': 42.0, 'turing': 56.0, 'nash': 92.0 } studentIds['turing'] # In[27]: studentIds['ada'] = 97.0 studentIds # In[28]: del studentIds['knuth'] studentIds # In[29]: studentIds['knuth'] = [42.0,'forty-two'] studentIds # In[30]: studentIds.keys() # In[31]: studentIds.values() # In[32]: studentIds.items() # In[33]: len(studentIds) # ## Numpy # In[35]: import numpy as np # In[38]: # Creating a 1-d array A = np.array([1,2,3,4,5]) A # In[39]: # Creating a 1-d array from an existing Python list L = [1, 2, 3, 4, 5, 6] A = np.array(L) A # In[40]: A / 5 # In[43]: np.array([1.0,2,3,4,5]) / 5 # In[48]: M = np.array([2, 3, 4, 5, 6, 7]) P = L * M P # In[49]: P.sum() # In[50]: P.mean() # In[47]: # Dot product of two vectors np.dot(L, M) # In[53]: # Creating a 2-d array X = np.array([[1,2,3],[4,5,6],[7,8,9]]) X # In[54]: # Transpose a 2-d array X.T # In[55]: # Array slicing X[1,2] # In[56]: X[:,1] # In[57]: X[0,:] # In[61]: X[1:,1:] # In[63]: X[1:,0:2] # In[65]: # Using arrays to index into other arrays (e.g., Boolean masks) A = np.array([1, 2, 3, 4, 5, 6]) A > 3 # In[67]: A[A > 3] # In[68]: sum(A[A > 3]) # In[71]: Ind = (A > 1) & (A < 6) print Ind A[Ind] # In[ ]: