Skip to content
Snippets Groups Projects
module3_wrapup.py 1.54 KiB
Newer Older
  • Learn to ignore specific revisions
  • vand's avatar
    vand committed
    ## module 3, example - not needing selection statement
    
    x = 5 
    
    # I want to make sure that x is not smaller than 0
    
    # One way of achieving this:
    if x<0:
        x = 0
    
    # A better way of achieving the same:  
    x  = max(x,0) 
    
    
    #%% module 3, example - short-circuit operators
    
    name = 'Vedrana'
    
    # I want to check if the name starts with 'Ved'. But what if name has less than
    # 3 letters? I need to make sure that name[:3] is not evaluated if name is too 
    # short. I add the first condition and the second condition will not be
    # evaluated if the first is false.
    
    if len(name)>2 and name[:3]=='Ved':
        print('Cool')
        
    
    #%% module 3, example -- an extra condition
        
    x = 4
    
    # I want to check whethr x is bigger than 5
    
    # A bad way of achieving this:
    if x>5:
        print('Bigger than 5')
    elif x<=5:
        print('Smaller or equal 5')
    
    # A better way of achieving this:
    if x>5:
        print('Bigger than 5')
    else:  
        print('Smaller or equal 5')    
        
    #%% module 3, example -- nothing to fall to
    
    # Make sure that return value is assigned in the function call
    
    def give_verdict(x):
        x = ''
        if x>0:
            verdict = 'Bigger than 0'
        elif x<0: 
            verdict = 'Smaller than 0'
        return verdict
    
    print(give_verdict(0))
    
    
    #%% module 3, example -- using boolean flags
    
    is_rgb = False
    
    if is_rgb: # dont write "if is_rgb==True"
        print('special treatment for color images')
    else:
        print('no special treatment')
        
        
    #%% module 3, example -- debugging, line by line
    
    x = 41.7
    
    if x > 137/4:
        x = 2*x + 154/18
    elif x< 117/4:
        x = x + 154/18