我想改进我的 Python 代码。我在这里寻找逻辑帮助,以使用更少的代码获得相同的结果。
我的程序通过参数获取一串原子并“学习”它们,返回它已学习的原子列表。
我想知道是否有任何方法可以优化我的代码。
def mol_term(molecule):
upper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
list_of_atoms = []
for i in range(len(molecule) - 1): #goes all string long
if molecule[i] in upper:
if not molecule[i+1] in upper:
temp = molecule[i] + molecule[i+1] #if atom has two letters
i = i + 1
else:
temp = molecule[i] #if not
if not temp in list_of_atoms:
list_of_atoms.append(temp) #if atom is not in the list appends to it
if molecule[-1] in upper:
list_of_atoms.append(molecule[-1]) #checks last letter
return print(list_of_atoms)
非常感谢。