0
votes

Python Dictionnaire Cartographie ne fonctionne pas comme prévu

Donc, j'ai ce fichier texte qui contient les éléments suivants.

<lang:\sForeign> <lang:foreign>
</lang:\sForeign> </lang:foreign>


0 commentaires

4 Réponses :


0
votes

Utilisez simplement un argument divisé différent. Cela devrait fonctionner pour vous:

line.split(' <')


0 commentaires

0
votes

Je suggérerais d'utiliser Regex. L'utilisation de la correspondance de modèle suivante vous donnera une liste de modèles de correspondance enfermés dans '' pour chaque ligne.

    import re

    pattern = re.compile(r'<.*?>')
    flist = pattern.findall(line) # sample output of flist = ['<lang:Foreign>', '<lang:foreign>']
    if len(flist) == 2:
        fdict.update({flist[0]: flist[1]})


0 commentaires

0
votes

Je suggérerais que vous vous séparez sur "> <" puis ajoutez le ">" et "<<" aux premier et deuxième éléments du tableau. Quelque chose comme ça ... xxx


0 commentaires

0
votes

L'utilisation d'expressions régulières constitue probablement le meilleur sens ici.

import re

pattern = re.compile(r'(<.*?>)\s*(<.*?>)')

flist = [pattern.findall(line) for line in f]
for k, v in flist:
    fdict.update({k: v})


0 commentaires