def rydbergEquation(finalEnergyLevel, initialEnergyLevel):
rydbergConstant = 1.0974 * 10**7
finalEnergyTerm = 1 / (finalEnergyLevel**2)
initialEnergyTerm = 1 / (initialEnergyLevel**2)
variableTerm = finalEnergyTerm - initialEnergyTerm
variableTerm = rydbergConstant * variableTerm
unlambda = variableTerm**-1
return unlambda
print("Energy Level (2 to 1): ", rydbergEquation(1, 2))
print("Energy Level (3 to 1): ", rydbergEquation(1, 3))
print("Energy Level (4 to 1): ", rydbergEquation(1, 4))
print("Energy Level (5 to 1): ", rydbergEquation(1, 5))
print("Energy Level (6 to 1): ", rydbergEquation(1, 6))
print("Energy Level (7 to 1): ", rydbergEquation(1, 7))
print("Energy Level (3 to 2): ", rydbergEquation(2, 3))
print("Energy Level (4 to 2): ", rydbergEquation(2, 4))
print("Energy Level (5 to 2): ", rydbergEquation(2, 5))
print("Energy Level (6 to 2): ", rydbergEquation(2, 6))
print("Energy Level (7 to 2): ", rydbergEquation(2, 7))
print("Energy Level (4 to 3): ", rydbergEquation(3, 4))
print("Energy Level (5 to 3): ", rydbergEquation(3, 5))
print("Energy Level (6 to 3): ", rydbergEquation(3, 6))
print("Energy Level (7 to 3): ", rydbergEquation(3, 7))
print("Energy Level (5 to 4): ", rydbergEquation(4, 5))
print("Energy Level (6 to 4): ", rydbergEquation(4, 6))
print("Energy Level (7 to 4): ", rydbergEquation(4, 7))
print("Energy Level (6 to 5): ", rydbergEquation(5, 6))
print("Energy Level (7 to 5): ", rydbergEquation(5, 7))
print("Energy Level (7 to 6): ", rydbergEquation(6, 7))
我可以删除21个print
语句并创建for循环以输出给定值吗?我似乎无法找到一种方法来循环该函数以获取不同能级变化的输出。
itertools.combinations