Configuration électronique chimie python

Bonjour,
je suis vraiment bloquée je dois réaliser un programme Python affichant les sous couches (n,l) jusqu'à n+l<8
d'après la loi de klechkowski, c'est-à-dire:
1s , 2s , 2p ,3s , 3p ,4s , 3d , 4p ,5s , 4d ,5p, 6s ,4f ,5d ,6p , 7s , 5f ,6d , 7p etc....

c'est-à-dire sans les lettres (1,0) (2,0) (2,1) (3,0) (3,1)(4,0) etc...
Mon programme n'aboutis à rien!

Programme:
n=1
ind=0
l=0
symbole_l='spdf'
l=symbole_l[0]
while n+l<8:
    ------for i in range(0,len(symbole_l)):
        ---------if n==n+l:
           -------- n=n+l
           --------- ind=l
           --------- print(n,l)
        --------else:
           ---------- n=n+1
           ----------- ind=l
           ----------- print(n,l)
print(n,symbole_l[l])


Configuration: Windows / Chrome 86.0.4240.193

8 réponses

  1. Bon maintenant que Chris a édité ton corrigé ton message

    On peut lire un peu mieux.
    Une fois copié collé ton code dans un éditeur en ligne et enlevé les -- en trop.

    J'ai une erreur à la ligne 7
    while n+l<8:


    Et cette erreur dit qu'on ne peut pas ajouter un entier et une string.

    Comprends tu d'où vient cette erreur?
    1. Ha tu l'as reposté pendant que je rédigeais mon message .
      Très bien, même erreur
    2. Dans mo programme n est u entier et l une liste donc c'est pour cela que ça ne marche pas!
  2. Pour t'aider (peut-être)

    Si j'écris
    while n+l<8:

    l'erreur est
    TypeError: unsupported operand type(s) for +: 'int' and 'str'


    alors que si j'écris
    while l+n<8:

    l'erreur est

    TypeError: can only concatenate str (not "int") to str


    1. je ne comprends pas pourquoi changer l'ordre ne n et l change le message d'erreur
      1. Nos message se sont encore croisés.

        Non, l n'est pas une liste.

        Regarde les commentaires
        n=1 #quel est le type de n ici?
        ind=0
        l=0 #quel est le type de l ici?
        symbole_l='spdf' #quel est le type de l ici?
        l=symbole_l[0] #quel est le type de l ici?
        

        1. -entier
          -entier
          -liste
          -entier?