def read_atom_properties_file(filedir):
    """
    Reads the text file "Dans Element Properties.txt"
    Returns a list of dicts containing atomic properites from multiple sources
      data = read_atom_properties_file(filedir)
      data[22]['Element']
    :param filedir: location of "Dans Element Properties.txt"
    :return: [dict, ...]
    """
    with open(filedir, 'rt') as f:
        lines = f.readlines()
    head = None
    data = []
    for line in lines:
        if '#' in line:
            continue
        if head is None:
            head = line.split()
            continue
        vals = line.split()
        element = {}
        for n in range(len(vals)):
            try:
                value = int(vals[n])
            except ValueError:
                try:
                    value = float(vals[n])
                except ValueError:
                    value = vals[n]
            element[head[n]] = value
        data += [element]
    return data
