如何从给定Python Elements类代码中打印元素周期表元素名称列表
实现方法
- 首先把你已经创建好的所有
Elements类实例汇总到同一个列表中,方便批量遍历 - 用Python列表推导式遍历这个实例列表,逐个提取每个实例的
name属性,就能得到目标格式的列表
完整可运行代码
class Elements: def __init__(self, name, number, symbol, group, family): self.name = name self.number = number self.symbol = symbol self.group = group self.family = family hydrogen = Elements("Hydrogen", 1, "H", "Nonmetal", "Alkali Metal") helium = Elements("Helium", 2, "He", "Nonmetal", "Noble Gas") lithium = Elements("Lithium", 3, "Li", "Metal", "Alkali Metal") beryllium = Elements("Beryllium", 4, "Be", "Metal", "Alkali Earth Metal") boron = Elements("Boron", 5, "B", "Metalloid", "Boron") carbon = Elements("Carbon", 6, "C", "Nonmetal", "Carbon") nitrogen = Elements("Nitrogen", 7, "N", "Nonmetal", "Nitrogen") oxygen = Elements("Oxygen", 8, "O", "Nonmetal", "Oxygen") fluorine = Elements("Fluorine", 9, "F", "Nonmetal", "Halogen") neon = Elements("Neon", 10, "Ne", "Nonmetal", "Noble Gas") sodium = Elements("Sodium", 11, "Na", "Metal", "Alkali Metal") magnesium = Elements("Magnesium", 12, "Mg", "Metal", "Alkali Earth Metal") aluminum = Elements("Aluminum", 13, "Al", "Metal", "Boron") silicon = Elements("Silicon", 14, "Si", "Metalloid", "Carbon") phosphorus = Elements("Phosphorus", 15, "P", "Nonmetal", "Nitrogen") sulfur = Elements("Sulfur", 16, "S", "Nonmetal", "Oxygen") chlorine = Elements("Chlorine", 17, "Cl", "Nonmetal", "Halogen") argon = Elements("Argon", 18, "Ar", "Nonmetal", "Noble Gas") potassium = Elements("Potassium", 19, "K", "Metal", "Alkali Metal") calcium = Elements("Calcium", 20, "Ca", "Metal", "Alkali Earth Metal") # 汇总所有元素实例 element_objs = [hydrogen, helium, lithium, beryllium, boron, carbon, nitrogen, oxygen, fluorine, neon, sodium, magnesium, aluminum, silicon, phosphorus, sulfur, chlorine, argon, potassium, calcium] # 提取所有元素的名称属性组成新列表 element_name_list = [obj.name for obj in element_objs] # 打印输出 print(element_name_list)
运行输出结果
['Hydrogen', 'Helium', 'Lithium', 'Beryllium', 'Boron', 'Carbon', 'Nitrogen', 'Oxygen', 'Fluorine', 'Neon', 'Sodium', 'Magnesium', 'Aluminum', 'Silicon', 'Phosphorus', 'Sulfur', 'Chlorine', 'Argon', 'Potassium', 'Calcium']
如果你需要提取其他属性,比如元素符号、原子序数,只需要把列表推导式里的.name替换成.symbol、.number即可。
内容的提问来源于stack exchange,提问作者BuroTime
相关产品推荐
相关产品推荐

