def percent_char_in_quotes(text: str) -> float:
    """
    Calculates the percent of characters that appear enclosed in quotes. 
    (assuming correct quote usage.  Doesn't count block quotations.)
        
        "Oh, hi," he said.
        
        >> 7 characters in quotes and 15 total characters (since quotes themselves are not counted as characters)
            = 7/15 = 0.4375

    Parameters
    ------------
    text: str
        The text to read.

    Returns
    ------------
    float
        percent of characters in quotes (0.0-1.0)
    """
    if(len(text) == 0):
        return 0

    num_char_in_quotes = 0
    total_char = 0
    
    counting_quotes = False
    for char in text:
        if(char == '\"' or char == "“" or char == "”"): #different kinds of quotes (especially if copy-pasted from word doc...)
            counting_quotes = not counting_quotes #Start or stop counting quotes
            continue
        if(counting_quotes):
            num_char_in_quotes+=1
        total_char += 1 #Do this rather than len() because we aren't counting quotes themselves as characters!
    ratio = num_char_in_quotes/total_char
    return ratio