Documenter le code Python avec Doxygen

Lorsque je documente le code Python dans Doxygen, je laisse le mémo car il convient.

Les commentaires au format docstring en python seront affichés par la fonction de support d'édition de VScode lorsque vous placez le curseur sur la fonction.

■ exemple de commentaire au format docstring


def leftCosets(self, H: FiniteGroup) -> Set[Set[GroupElement]]:
	"""
	@brief Calculates left cosets of H in self.

	@details foo

	:param H: subGroup of self
	:return:

	@note bar
	"""

	cosets = {frozenset(copy.deepcopy(H.elements)),}
	remain = self.elements - H.elements

	while len(remain) > 0:
		#~ Omis ~

	return cosets

C'est pratique car vous pouvez le vérifier dans le commentaire sans passer à la position de définition de la fonction en déplaçant simplement le curseur sur la fonction.

Cependant, le format docstring n'a pas l'air bien lorsqu'il est documenté dans Doxygen car "aucune commande spéciale dans doxygen n'est prise en charge".

Par conséquent, nous utiliserons un filtre qui convertit le format docstring au format doxygen.

■ Filtre pour convertir le format docstring au format Doxygen doxyfilter_python(GitHub)

Ce filtre convertit le format docstring au format doxygen et le transmet à Doxygen.

■ Exemple de commentaire au format doxygen

	##
	#@brief Calculates left cosets of H in self.
	#@details foo
	#
	#@param H (FiniteGroup) subGroup of self
	#@return (Set[Set[GroupElement]])
	#
	#@note bar
	def leftCosets(self, H: FiniteGroup) -> Set[Set[GroupElement]]:
	cosets = {frozenset(copy.deepcopy(H.elements)),}
	remain = self.elements - H.elements

	while len(remain) > 0:
		#~ Omis ~

	return cosets

python:doxyfilter_python.py


import io

#~ Omis ~ effectuer_Ajoutez la ligne suivante au début de la fonction fh
        sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')


#~ Omis ~ Spécifiez l'encodage dans la partie ouverte de fichier de la fonction principale.
        with open(file, 'r',encoding='utf-8') as fh:

■ Précautions telles que les paramètres Doxygen

Python ressemble plus à Java qu'à C ou C ++, définissez OPTMIZE_OUTPUT_JAVA sur YES dans le fichier de configuration.

Depuis «Blocs de commentaires en Python»

-Assurez-vous de laisser une ligne entre @brief et @details. Sinon, l'info-bulle VS Code affichera les éléments sur une seule ligne sans interruption. -Assurez-vous d'inclure un commentaire de fichier. Sinon, la méthode globale ne sera pas documentée.

De «Utilisation de Doxygen avec Python3 avec l'assistance à la modification de code VS»

--Expert tab-> Topics-> Input-> Spécifiez doxyfilter_python.py avec le chemin complet dans INPUT_FILTER.

Pour le site de référence ("Utiliser Doxygen avec Python3 tout en profitant de la prise en charge de l'édition de VS Code")

Assurez-vous de spécifier doxyfilter_python.py avec le chemin complet et indiquez explicitement qu'il fonctionnera en python3 (sinon, il a échoué).

Bien qu'il soit écrit, il semble qu'il n'est pas nécessaire de spécifier python3 dans un environnement où seule la série python3.x est incluse.

Recommended Posts

Documenter le code Python avec Doxygen
Obtenez le code du pays avec python
Python avec VSCode (Windows 10)
Déboguer Python avec VS Code
Installez python avec mac vs code
FizzBuzz en Python3
Grattage avec Python
Statistiques avec python
Grattage avec Python
Python avec Go
Twilio avec Python
Intégrer avec Python
Jouez avec 2016-Python
code de caractère python
AES256 avec python
Testé avec Python
python commence par ()
avec syntaxe (Python)
Bingo avec python
Zundokokiyoshi avec python
[Automation] Lire des documents Word avec Python
Documentation sur Python
Excel avec Python
Micro-ordinateur avec Python
Cast avec python
Créer un environnement de développement Python avec Visual Studio Code
Environnement virtuel / package Python (Windows10) avec VSCode
Déboguer avec VS Code en utilisant Boost Python Numpy
Formater automatiquement le code Python en code compatible PEP8 avec Emacs
Utiliser Python dans un environnement Anaconda avec VS Code
Convertir le code de caractère du fichier avec Python3
Analyse statique du code Python avec GitLab CI
[Blender x Python] Pensez au code avec des symboles
Créer un environnement d'exécution python avec VS Code
Communication série avec Python
Zip, décompressez avec python
Django 1.11 a démarré avec Python3.6
Jugement des nombres premiers avec Python
Python avec eclipse + PyDev.
Communication de socket avec Python
Analyse de données avec python 2
Grattage en Python (préparation)
Essayez de gratter avec Python.
Apprendre Python avec ChemTHEATER 03
Recherche séquentielle avec Python
"Orienté objet" appris avec python
Exécutez Python avec VBA
Manipuler yaml avec python
Résolvez AtCoder 167 avec python
[Python] Utiliser JSON avec Python
Renforcez avec le test de code ⑨
Apprendre Python avec ChemTHEATER 05-1
Renforcez avec le test de code ③
Apprenez Python avec ChemTHEATER
Exécutez prepDE.py avec python3
1.1 Premiers pas avec Python
Collecter des tweets avec Python
Binarisation avec OpenCV / Python
3. 3. Programmation IA avec Python