Comment utiliser « classe » le mot en fonction du paramètre appelle en python
-
20-09-2019 - |
Question
Je suis en train d'écrire un générateur XML par la demande de mon manager. Pour l'amour de moins typages, j'ai décidé en utilisant ElementTree comme analyseur et SimpleXMLWriter comme écrivain.
Le fichier XML de résultat nécessite les attributs nommés « classe ». par exemple.
<Node class="oops"></Node>
Comme le tutoriel officiel suggéré, d'écrire un nœud XML il suffit d'utiliser cette méthode:
w.element("meta", name="generator", value="my application 1.0")
Alors je l'ai écrit:
w.element("Node", class="oops")
python ne bâillements SyntaxError. Toute aide?
La solution
Je suppose que les développeurs SimpleXMLWriter signifiait cette solution:
w.element("Node", None, {'class': 'oops'})
ou
w.element("Node", attrib={'class': 'oops'})
Autres conseils
Qu'est-ce que steveha a écrit est vrai. Comme en toutes les langues, les mots-clés ne peuvent pas être utilisés à des fins différentes.
Qu'est-ce que vous pouvez faire, si vous devez utiliser est cette « classe »:
w.element("Node", **{'class': 'oops'})
class
est un mot réservé en Python. Vous ne pouvez pas l'utiliser pour un nom de variable, plus que vous pouvez avoir une variable appelée class
en C ++.
L'abréviation usuelle class
est soit klass
ou cls
.
Voici une liste officielle des mots réservés en Python:
http://docs.python.org/reference/lexical_analysis.html#keywords