Exemplo n.º 1
0
def test_parse_formula():
    """Verify that the parse_formula function works correctly.

    Parameters: none
    Return: nothing
    """
    periodic_table_dict = make_periodic_table()
    assert isinstance(periodic_table_dict, dict), \
        "make_periodic_table function must return a dictionary: " \
        f" expected a dictionary but found a {type(periodic_table_dict)}"

    sym_quant_list = parse_formula("H2O", periodic_table_dict)
    assert isinstance(sym_quant_list, list), \
        "parse_formula function must return a list: " \
        f" expected a list but found a {type(sym_quant_list)}"

    assert parse_formula("H2O", periodic_table_dict) \
            == [("H",2), ("O",1)]
    assert parse_formula("C6H6", periodic_table_dict) \
            == [("C",6), ("H",6)]
    assert parse_formula("(C2(NaCl)4H2)2C4Na", periodic_table_dict) \
            == [("C",8), ("Na",9), ("Cl",8), ("H",4)]
    with pytest.raises(FormulaError):
        parse_formula("L", periodic_table_dict)
    with pytest.raises(FormulaError):
        parse_formula("4H", periodic_table_dict)
    with pytest.raises(FormulaError):
        parse_formula("H2L4", periodic_table_dict)
    with pytest.raises(FormulaError):
        parse_formula("-H", periodic_table_dict)
    with pytest.raises(FormulaError):
        parse_formula("(H2O", periodic_table_dict)
    with pytest.raises(FormulaError):
        parse_formula("H2)O3", periodic_table_dict)
Exemplo n.º 2
0
def test_compute_molar_mass():
    """Verify that the compute_molar_mass function works correctly.

    Parameters: none
    Return: nothing
    """
    periodic_table_dict = make_periodic_table()
    assert isinstance(periodic_table_dict, dict), \
        "make_periodic_table function must return a dictionary: " \
        f" expected a dictionary but found a {type(periodic_table_dict)}"

    molar_mass = compute_molar_mass([["O", 2]], periodic_table_dict)
    assert isinstance(molar_mass, int) or isinstance(molar_mass, float), \
        "compute_molar_mass function must return a number: " \
        f" expected a number but found a {type(molar_mass)}"

    assert compute_molar_mass([], periodic_table_dict) == 0
    assert compute_molar_mass([["O",2]], periodic_table_dict) \
            == approx(31.9988)
    assert compute_molar_mass([["C",6],["H",6]], periodic_table_dict) \
            == approx(78.11184)
    assert compute_molar_mass([["C", 13], ["H", 16], ["N", 2], ["O", 2]],
                              periodic_table_dict) == approx(232.27834)
Exemplo n.º 3
0
def test_make_periodic_table():
    """Verify that the make_periodic_table function works correctly.
    Parameters: none
    Return: nothing
    """
    # Call the make_periodic_table and store the returned
    # periodic table in a variable named period_table.
    periodic_table = make_periodic_table()

    # Create a key function that will be used by the sorted method.
    by_symbol = lambda element: element[SYMBOL_INDEX]

    # Sort the periodic table by the element symbols.
    periodic_table = sorted(periodic_table, key=by_symbol)

    # Check each element in the sorted periodic table.
    check_element(periodic_table, ["Ac", "Actinium", 227])
    check_element(periodic_table, ["Ag", "Silver", 107.8682])
    check_element(periodic_table, ["Al", "Aluminum", 26.9815386])
    check_element(periodic_table, ["Am", "Americium", 243])
    check_element(periodic_table, ["Ar", "Argon", 39.948])
    check_element(periodic_table, ["As", "Arsenic", 74.9216])
    check_element(periodic_table, ["At", "Astatine", 210])
    check_element(periodic_table, ["Au", "Gold", 196.966569])
    check_element(periodic_table, ["B", "Boron", 10.811])
    check_element(periodic_table, ["Ba", "Barium", 137.327])
    check_element(periodic_table, ["Be", "Beryllium", 9.012182])
    check_element(periodic_table, ["Bh", "Bohrium", 272])
    check_element(periodic_table, ["Bi", "Bismuth", 208.9804])
    check_element(periodic_table, ["Bk", "Berkelium", 247])
    check_element(periodic_table, ["Br", "Bromine", 79.904])
    check_element(periodic_table, ["C", "Carbon", 12.0107])
    check_element(periodic_table, ["Ca", "Calcium", 40.078])
    check_element(periodic_table, ["Cd", "Cadmium", 112.411])
    check_element(periodic_table, ["Ce", "Cerium", 140.116])
    check_element(periodic_table, ["Cf", "Californium", 251])
    check_element(periodic_table, ["Cl", "Chlorine", 35.453])
    check_element(periodic_table, ["Cm", "Curium", 247])
    check_element(periodic_table, ["Cn", "Copernicium", 285])
    check_element(periodic_table, ["Co", "Cobalt", 58.933195])
    check_element(periodic_table, ["Cr", "Chromium", 51.9961])
    check_element(periodic_table, ["Cs", "Cesium", 132.9054519])
    check_element(periodic_table, ["Cu", "Copper", 63.546])
    check_element(periodic_table, ["Db", "Dubnium", 268])
    check_element(periodic_table, ["Ds", "Darmstadtium", 281])
    check_element(periodic_table, ["Dy", "Dysprosium", 162.5])
    check_element(periodic_table, ["Er", "Erbium", 167.259])
    check_element(periodic_table, ["Es", "Einsteinium", 252])
    check_element(periodic_table, ["Eu", "Europium", 151.964])
    check_element(periodic_table, ["F", "Fluorine", 18.9984032])
    check_element(periodic_table, ["Fe", "Iron", 55.845])
    check_element(periodic_table, ["Fl", "Flerovium", 289])
    check_element(periodic_table, ["Fm", "Fermium", 257])
    check_element(periodic_table, ["Fr", "Francium", 223])
    check_element(periodic_table, ["Ga", "Gallium", 69.723])
    check_element(periodic_table, ["Gd", "Gadolinium", 157.25])
    check_element(periodic_table, ["Ge", "Germanium", 72.64])
    check_element(periodic_table, ["H", "Hydrogen", 1.00794])
    check_element(periodic_table, ["He", "Helium", 4.002602])
    check_element(periodic_table, ["Hf", "Hafnium", 178.49])
    check_element(periodic_table, ["Hg", "Mercury", 200.59])
    check_element(periodic_table, ["Ho", "Holmium", 164.93032])
    check_element(periodic_table, ["Hs", "Hassium", 270])
    check_element(periodic_table, ["I", "Iodine", 126.90447])
    check_element(periodic_table, ["In", "Indium", 114.818])
    check_element(periodic_table, ["Ir", "Iridium", 192.217])
    check_element(periodic_table, ["K", "Potassium", 39.0983])
    check_element(periodic_table, ["Kr", "Krypton", 83.798])
    check_element(periodic_table, ["La", "Lanthanum", 138.90547])
    check_element(periodic_table, ["Li", "Lithium", 6.941])
    check_element(periodic_table, ["Lr", "Lawrencium", 262])
    check_element(periodic_table, ["Lu", "Lutetium", 174.9668])
    check_element(periodic_table, ["Lv", "Livermorium", 293])
    check_element(periodic_table, ["Mc", "Moscovium", 288])
    check_element(periodic_table, ["Md", "Mendelevium", 258])
    check_element(periodic_table, ["Mg", "Magnesium", 24.305])
    check_element(periodic_table, ["Mn", "Manganese", 54.938045])
    check_element(periodic_table, ["Mo", "Molybdenum", 95.96])
    check_element(periodic_table, ["Mt", "Meitnerium", 276])
    check_element(periodic_table, ["N", "Nitrogen", 14.0067])
    check_element(periodic_table, ["Na", "Sodium", 22.98976928])
    check_element(periodic_table, ["Nb", "Niobium", 92.90638])
    check_element(periodic_table, ["Nd", "Neodymium", 144.242])
    check_element(periodic_table, ["Ne", "Neon", 20.1797])
    check_element(periodic_table, ["Nh", "Nihonium", 284])
    check_element(periodic_table, ["Ni", "Nickel", 58.6934])
    check_element(periodic_table, ["No", "Nobelium", 259])
    check_element(periodic_table, ["Np", "Neptunium", 237])
    check_element(periodic_table, ["O", "Oxygen", 15.9994])
    check_element(periodic_table, ["Og", "Oganesson", 294])
    check_element(periodic_table, ["Os", "Osmium", 190.23])
    check_element(periodic_table, ["P", "Phosphorus", 30.973762])
    check_element(periodic_table, ["Pa", "Protactinium", 231.03588])
    check_element(periodic_table, ["Pb", "Lead", 207.2])
    check_element(periodic_table, ["Pd", "Palladium", 106.42])
    check_element(periodic_table, ["Pm", "Promethium", 145])
    check_element(periodic_table, ["Po", "Polonium", 209])
    check_element(periodic_table, ["Pr", "Praseodymium", 140.90765])
    check_element(periodic_table, ["Pt", "Platinum", 195.084])
    check_element(periodic_table, ["Pu", "Plutonium", 244])
    check_element(periodic_table, ["Ra", "Radium", 226])
    check_element(periodic_table, ["Rb", "Rubidium", 85.4678])
    check_element(periodic_table, ["Re", "Rhenium", 186.207])
    check_element(periodic_table, ["Rf", "Rutherfordium", 267])
    check_element(periodic_table, ["Rg", "Roentgenium", 280])
    check_element(periodic_table, ["Rh", "Rhodium", 102.9055])
    check_element(periodic_table, ["Rn", "Radon", 222])
    check_element(periodic_table, ["Ru", "Ruthenium", 101.07])
    check_element(periodic_table, ["S", "Sulfur", 32.065])
    check_element(periodic_table, ["Sb", "Antimony", 121.76])
    check_element(periodic_table, ["Sc", "Scandium", 44.955912])
    check_element(periodic_table, ["Se", "Selenium", 78.96])
    check_element(periodic_table, ["Sg", "Seaborgium", 271])
    check_element(periodic_table, ["Si", "Silicon", 28.0855])
    check_element(periodic_table, ["Sm", "Samarium", 150.36])
    check_element(periodic_table, ["Sn", "Tin", 118.71])
    check_element(periodic_table, ["Sr", "Strontium", 87.62])
    check_element(periodic_table, ["Ta", "Tantalum", 180.94788])
    check_element(periodic_table, ["Tb", "Terbium", 158.92535])
    check_element(periodic_table, ["Tc", "Technetium", 98])
    check_element(periodic_table, ["Te", "Tellurium", 127.6])
    check_element(periodic_table, ["Th", "Thorium", 232.03806])
    check_element(periodic_table, ["Ti", "Titanium", 47.867])
    check_element(periodic_table, ["Tl", "Thallium", 204.3833])
    check_element(periodic_table, ["Tm", "Thulium", 168.93421])
    check_element(periodic_table, ["Ts", "Tennessine", 294])
    check_element(periodic_table, ["U", "Uranium", 238.02891])
    check_element(periodic_table, ["V", "Vanadium", 50.9415])
    check_element(periodic_table, ["W", "Tungsten", 183.84])
    check_element(periodic_table, ["Xe", "Xenon", 131.293])
    check_element(periodic_table, ["Y", "Yttrium", 88.90585])
    check_element(periodic_table, ["Yb", "Ytterbium", 173.054])
    check_element(periodic_table, ["Zn", "Zinc", 65.38])
    check_element(periodic_table, ["Zr", "Zirconium", 91.224])
Exemplo n.º 4
0
def test_make_periodic_table():
    """Verify that the make_periodic_table function works correctly.
    Parameters: none
    Return: nothing
    """
    # Call the make_periodic_table function and store the returned
    # dictionary in a variable named periodic_table_dict.
    periodic_table_dict = make_periodic_table()

    # Verify that the make_periodic_table function returns a dictionary.
    assert isinstance(periodic_table_dict, dict), \
        "make_periodic_table function must return a dictionary: " \
        f" expected a dictionary but found a {type(periodic_table_dict)}"

    # Check each item in the periodic table dictionary.
    check_element(periodic_table_dict, "Ac", ["Actinium", 227])
    check_element(periodic_table_dict, "Ag", ["Silver", 107.8682])
    check_element(periodic_table_dict, "Al", ["Aluminum", 26.9815386])
    check_element(periodic_table_dict, "Ar", ["Argon", 39.948])
    check_element(periodic_table_dict, "As", ["Arsenic", 74.9216])
    check_element(periodic_table_dict, "At", ["Astatine", 210])
    check_element(periodic_table_dict, "Au", ["Gold", 196.966569])
    check_element(periodic_table_dict, "B", ["Boron", 10.811])
    check_element(periodic_table_dict, "Ba", ["Barium", 137.327])
    check_element(periodic_table_dict, "Be", ["Beryllium", 9.012182])
    check_element(periodic_table_dict, "Bi", ["Bismuth", 208.9804])
    check_element(periodic_table_dict, "Br", ["Bromine", 79.904])
    check_element(periodic_table_dict, "C", ["Carbon", 12.0107])
    check_element(periodic_table_dict, "Ca", ["Calcium", 40.078])
    check_element(periodic_table_dict, "Cd", ["Cadmium", 112.411])
    check_element(periodic_table_dict, "Ce", ["Cerium", 140.116])
    check_element(periodic_table_dict, "Cl", ["Chlorine", 35.453])
    check_element(periodic_table_dict, "Co", ["Cobalt", 58.933195])
    check_element(periodic_table_dict, "Cr", ["Chromium", 51.9961])
    check_element(periodic_table_dict, "Cs", ["Cesium", 132.9054519])
    check_element(periodic_table_dict, "Cu", ["Copper", 63.546])
    check_element(periodic_table_dict, "Dy", ["Dysprosium", 162.5])
    check_element(periodic_table_dict, "Er", ["Erbium", 167.259])
    check_element(periodic_table_dict, "Eu", ["Europium", 151.964])
    check_element(periodic_table_dict, "F", ["Fluorine", 18.9984032])
    check_element(periodic_table_dict, "Fe", ["Iron", 55.845])
    check_element(periodic_table_dict, "Fr", ["Francium", 223])
    check_element(periodic_table_dict, "Ga", ["Gallium", 69.723])
    check_element(periodic_table_dict, "Gd", ["Gadolinium", 157.25])
    check_element(periodic_table_dict, "Ge", ["Germanium", 72.64])
    check_element(periodic_table_dict, "H", ["Hydrogen", 1.00794])
    check_element(periodic_table_dict, "He", ["Helium", 4.002602])
    check_element(periodic_table_dict, "Hf", ["Hafnium", 178.49])
    check_element(periodic_table_dict, "Hg", ["Mercury", 200.59])
    check_element(periodic_table_dict, "Ho", ["Holmium", 164.93032])
    check_element(periodic_table_dict, "I", ["Iodine", 126.90447])
    check_element(periodic_table_dict, "In", ["Indium", 114.818])
    check_element(periodic_table_dict, "Ir", ["Iridium", 192.217])
    check_element(periodic_table_dict, "K", ["Potassium", 39.0983])
    check_element(periodic_table_dict, "Kr", ["Krypton", 83.798])
    check_element(periodic_table_dict, "La", ["Lanthanum", 138.90547])
    check_element(periodic_table_dict, "Li", ["Lithium", 6.941])
    check_element(periodic_table_dict, "Lu", ["Lutetium", 174.9668])
    check_element(periodic_table_dict, "Mg", ["Magnesium", 24.305])
    check_element(periodic_table_dict, "Mn", ["Manganese", 54.938045])
    check_element(periodic_table_dict, "Mo", ["Molybdenum", 95.96])
    check_element(periodic_table_dict, "N", ["Nitrogen", 14.0067])
    check_element(periodic_table_dict, "Na", ["Sodium", 22.98976928])
    check_element(periodic_table_dict, "Nb", ["Niobium", 92.90638])
    check_element(periodic_table_dict, "Nd", ["Neodymium", 144.242])
    check_element(periodic_table_dict, "Ne", ["Neon", 20.1797])
    check_element(periodic_table_dict, "Ni", ["Nickel", 58.6934])
    check_element(periodic_table_dict, "Np", ["Neptunium", 237])
    check_element(periodic_table_dict, "O", ["Oxygen", 15.9994])
    check_element(periodic_table_dict, "Os", ["Osmium", 190.23])
    check_element(periodic_table_dict, "P", ["Phosphorus", 30.973762])
    check_element(periodic_table_dict, "Pa", ["Protactinium", 231.03588])
    check_element(periodic_table_dict, "Pb", ["Lead", 207.2])
    check_element(periodic_table_dict, "Pd", ["Palladium", 106.42])
    check_element(periodic_table_dict, "Pm", ["Promethium", 145])
    check_element(periodic_table_dict, "Po", ["Polonium", 209])
    check_element(periodic_table_dict, "Pr", ["Praseodymium", 140.90765])
    check_element(periodic_table_dict, "Pt", ["Platinum", 195.084])
    check_element(periodic_table_dict, "Pu", ["Plutonium", 244])
    check_element(periodic_table_dict, "Ra", ["Radium", 226])
    check_element(periodic_table_dict, "Rb", ["Rubidium", 85.4678])
    check_element(periodic_table_dict, "Re", ["Rhenium", 186.207])
    check_element(periodic_table_dict, "Rh", ["Rhodium", 102.9055])
    check_element(periodic_table_dict, "Rn", ["Radon", 222])
    check_element(periodic_table_dict, "Ru", ["Ruthenium", 101.07])
    check_element(periodic_table_dict, "S", ["Sulfur", 32.065])
    check_element(periodic_table_dict, "Sb", ["Antimony", 121.76])
    check_element(periodic_table_dict, "Sc", ["Scandium", 44.955912])
    check_element(periodic_table_dict, "Se", ["Selenium", 78.96])
    check_element(periodic_table_dict, "Si", ["Silicon", 28.0855])
    check_element(periodic_table_dict, "Sm", ["Samarium", 150.36])
    check_element(periodic_table_dict, "Sn", ["Tin", 118.71])
    check_element(periodic_table_dict, "Sr", ["Strontium", 87.62])
    check_element(periodic_table_dict, "Ta", ["Tantalum", 180.94788])
    check_element(periodic_table_dict, "Tb", ["Terbium", 158.92535])
    check_element(periodic_table_dict, "Tc", ["Technetium", 98])
    check_element(periodic_table_dict, "Te", ["Tellurium", 127.6])
    check_element(periodic_table_dict, "Th", ["Thorium", 232.03806])
    check_element(periodic_table_dict, "Ti", ["Titanium", 47.867])
    check_element(periodic_table_dict, "Tl", ["Thallium", 204.3833])
    check_element(periodic_table_dict, "Tm", ["Thulium", 168.93421])
    check_element(periodic_table_dict, "U", ["Uranium", 238.02891])
    check_element(periodic_table_dict, "V", ["Vanadium", 50.9415])
    check_element(periodic_table_dict, "W", ["Tungsten", 183.84])
    check_element(periodic_table_dict, "Xe", ["Xenon", 131.293])
    check_element(periodic_table_dict, "Y", ["Yttrium", 88.90585])
    check_element(periodic_table_dict, "Yb", ["Ytterbium", 173.054])
    check_element(periodic_table_dict, "Zn", ["Zinc", 65.38])
    check_element(periodic_table_dict, "Zr", ["Zirconium", 91.224])
Exemplo n.º 5
0
def test_make_periodic_table():
    """Verify that the make_periodic_table function works correctly.
    Parameters: none
    Return: nothing
    """
    # Call the make_periodic_table and store the returned
    # periodic table in a variable named periodic_table_list.
    periodic_table_list = make_periodic_table()
    assert isinstance(periodic_table_list, list), \
        "make_periodic_table function must return a list:" \
        f" expected a list but found a {type(periodic_table_list)}"

    # Create a key function that will be used by the sorted method.
    by_name = lambda element: element[NAME_INDEX]

    # Sort the periodic table by the element names.
    periodic_table_list = sorted(periodic_table_list, key=by_name)

    # Check each element in the sorted periodic table.
    i = 0
    check_element(periodic_table_list[i], ['Ac', 'Actinium', 227])
    i += 1
    check_element(periodic_table_list[i], ['Al', 'Aluminum', 26.9815386])
    i += 1
    check_element(periodic_table_list[i], ['Sb', 'Antimony', 121.76])
    i += 1
    check_element(periodic_table_list[i], ['Ar', 'Argon', 39.948])
    i += 1
    check_element(periodic_table_list[i], ['As', 'Arsenic', 74.9216])
    i += 1
    check_element(periodic_table_list[i], ['At', 'Astatine', 210])
    i += 1
    check_element(periodic_table_list[i], ['Ba', 'Barium', 137.327])
    i += 1
    check_element(periodic_table_list[i], ['Be', 'Beryllium', 9.012182])
    i += 1
    check_element(periodic_table_list[i], ['Bi', 'Bismuth', 208.9804])
    i += 1
    check_element(periodic_table_list[i], ['B', 'Boron', 10.811])
    i += 1
    check_element(periodic_table_list[i], ['Br', 'Bromine', 79.904])
    i += 1
    check_element(periodic_table_list[i], ['Cd', 'Cadmium', 112.411])
    i += 1
    check_element(periodic_table_list[i], ['Ca', 'Calcium', 40.078])
    i += 1
    check_element(periodic_table_list[i], ['C', 'Carbon', 12.0107])
    i += 1
    check_element(periodic_table_list[i], ['Ce', 'Cerium', 140.116])
    i += 1
    check_element(periodic_table_list[i], ['Cs', 'Cesium', 132.9054519])
    i += 1
    check_element(periodic_table_list[i], ['Cl', 'Chlorine', 35.453])
    i += 1
    check_element(periodic_table_list[i], ['Cr', 'Chromium', 51.9961])
    i += 1
    check_element(periodic_table_list[i], ['Co', 'Cobalt', 58.933195])
    i += 1
    check_element(periodic_table_list[i], ['Cu', 'Copper', 63.546])
    i += 1
    check_element(periodic_table_list[i], ['Dy', 'Dysprosium', 162.5])
    i += 1
    check_element(periodic_table_list[i], ['Er', 'Erbium', 167.259])
    i += 1
    check_element(periodic_table_list[i], ['Eu', 'Europium', 151.964])
    i += 1
    check_element(periodic_table_list[i], ['F', 'Fluorine', 18.9984032])
    i += 1
    check_element(periodic_table_list[i], ['Fr', 'Francium', 223])
    i += 1
    check_element(periodic_table_list[i], ['Gd', 'Gadolinium', 157.25])
    i += 1
    check_element(periodic_table_list[i], ['Ga', 'Gallium', 69.723])
    i += 1
    check_element(periodic_table_list[i], ['Ge', 'Germanium', 72.64])
    i += 1
    check_element(periodic_table_list[i], ['Au', 'Gold', 196.966569])
    i += 1
    check_element(periodic_table_list[i], ['Hf', 'Hafnium', 178.49])
    i += 1
    check_element(periodic_table_list[i], ['He', 'Helium', 4.002602])
    i += 1
    check_element(periodic_table_list[i], ['Ho', 'Holmium', 164.93032])
    i += 1
    check_element(periodic_table_list[i], ['H', 'Hydrogen', 1.00794])
    i += 1
    check_element(periodic_table_list[i], ['In', 'Indium', 114.818])
    i += 1
    check_element(periodic_table_list[i], ['I', 'Iodine', 126.90447])
    i += 1
    check_element(periodic_table_list[i], ['Ir', 'Iridium', 192.217])
    i += 1
    check_element(periodic_table_list[i], ['Fe', 'Iron', 55.845])
    i += 1
    check_element(periodic_table_list[i], ['Kr', 'Krypton', 83.798])
    i += 1
    check_element(periodic_table_list[i], ['La', 'Lanthanum', 138.90547])
    i += 1
    check_element(periodic_table_list[i], ['Pb', 'Lead', 207.2])
    i += 1
    check_element(periodic_table_list[i], ['Li', 'Lithium', 6.941])
    i += 1
    check_element(periodic_table_list[i], ['Lu', 'Lutetium', 174.9668])
    i += 1
    check_element(periodic_table_list[i], ['Mg', 'Magnesium', 24.305])
    i += 1
    check_element(periodic_table_list[i], ['Mn', 'Manganese', 54.938045])
    i += 1
    check_element(periodic_table_list[i], ['Hg', 'Mercury', 200.59])
    i += 1
    check_element(periodic_table_list[i], ['Mo', 'Molybdenum', 95.96])
    i += 1
    check_element(periodic_table_list[i], ['Nd', 'Neodymium', 144.242])
    i += 1
    check_element(periodic_table_list[i], ['Ne', 'Neon', 20.1797])
    i += 1
    check_element(periodic_table_list[i], ['Np', 'Neptunium', 237])
    i += 1
    check_element(periodic_table_list[i], ['Ni', 'Nickel', 58.6934])
    i += 1
    check_element(periodic_table_list[i], ['Nb', 'Niobium', 92.90638])
    i += 1
    check_element(periodic_table_list[i], ['N', 'Nitrogen', 14.0067])
    i += 1
    check_element(periodic_table_list[i], ['Os', 'Osmium', 190.23])
    i += 1
    check_element(periodic_table_list[i], ['O', 'Oxygen', 15.9994])
    i += 1
    check_element(periodic_table_list[i], ['Pd', 'Palladium', 106.42])
    i += 1
    check_element(periodic_table_list[i], ['P', 'Phosphorus', 30.973762])
    i += 1
    check_element(periodic_table_list[i], ['Pt', 'Platinum', 195.084])
    i += 1
    check_element(periodic_table_list[i], ['Pu', 'Plutonium', 244])
    i += 1
    check_element(periodic_table_list[i], ['Po', 'Polonium', 209])
    i += 1
    check_element(periodic_table_list[i], ['K', 'Potassium', 39.0983])
    i += 1
    check_element(periodic_table_list[i], ['Pr', 'Praseodymium', 140.90765])
    i += 1
    check_element(periodic_table_list[i], ['Pm', 'Promethium', 145])
    i += 1
    check_element(periodic_table_list[i], ['Pa', 'Protactinium', 231.03588])
    i += 1
    check_element(periodic_table_list[i], ['Ra', 'Radium', 226])
    i += 1
    check_element(periodic_table_list[i], ['Rn', 'Radon', 222])
    i += 1
    check_element(periodic_table_list[i], ['Re', 'Rhenium', 186.207])
    i += 1
    check_element(periodic_table_list[i], ['Rh', 'Rhodium', 102.9055])
    i += 1
    check_element(periodic_table_list[i], ['Rb', 'Rubidium', 85.4678])
    i += 1
    check_element(periodic_table_list[i], ['Ru', 'Ruthenium', 101.07])
    i += 1
    check_element(periodic_table_list[i], ['Sm', 'Samarium', 150.36])
    i += 1
    check_element(periodic_table_list[i], ['Sc', 'Scandium', 44.955912])
    i += 1
    check_element(periodic_table_list[i], ['Se', 'Selenium', 78.96])
    i += 1
    check_element(periodic_table_list[i], ['Si', 'Silicon', 28.0855])
    i += 1
    check_element(periodic_table_list[i], ['Ag', 'Silver', 107.8682])
    i += 1
    check_element(periodic_table_list[i], ['Na', 'Sodium', 22.98976928])
    i += 1
    check_element(periodic_table_list[i], ['Sr', 'Strontium', 87.62])
    i += 1
    check_element(periodic_table_list[i], ['S', 'Sulfur', 32.065])
    i += 1
    check_element(periodic_table_list[i], ['Ta', 'Tantalum', 180.94788])
    i += 1
    check_element(periodic_table_list[i], ['Tc', 'Technetium', 98])
    i += 1
    check_element(periodic_table_list[i], ['Te', 'Tellurium', 127.6])
    i += 1
    check_element(periodic_table_list[i], ['Tb', 'Terbium', 158.92535])
    i += 1
    check_element(periodic_table_list[i], ['Tl', 'Thallium', 204.3833])
    i += 1
    check_element(periodic_table_list[i], ['Th', 'Thorium', 232.03806])
    i += 1
    check_element(periodic_table_list[i], ['Tm', 'Thulium', 168.93421])
    i += 1
    check_element(periodic_table_list[i], ['Sn', 'Tin', 118.71])
    i += 1
    check_element(periodic_table_list[i], ['Ti', 'Titanium', 47.867])
    i += 1
    check_element(periodic_table_list[i], ['W', 'Tungsten', 183.84])
    i += 1
    check_element(periodic_table_list[i], ['U', 'Uranium', 238.02891])
    i += 1
    check_element(periodic_table_list[i], ['V', 'Vanadium', 50.9415])
    i += 1
    check_element(periodic_table_list[i], ['Xe', 'Xenon', 131.293])
    i += 1
    check_element(periodic_table_list[i], ['Yb', 'Ytterbium', 173.054])
    i += 1
    check_element(periodic_table_list[i], ['Y', 'Yttrium', 88.90585])
    i += 1
    check_element(periodic_table_list[i], ['Zn', 'Zinc', 65.38])
    i += 1
    check_element(periodic_table_list[i], ['Zr', 'Zirconium', 91.224])