see est utile car il est utile lors de la vérification des méthodes et des variables de la bibliothèque. Ceci est utile lorsque vous souhaitez vérifier si toutes les méthodes sont incluses lorsque vous ajoutez une nouvelle bibliothèque, ou lorsque vous souhaitez vérifier les variables de la classe.
J'omettrai la méthode d'introduction car je pense qu'elle sortira bientôt si je la vérifie. En gros, je l'utilise sur le terminal (Mac OSX, Yosemite) sans l'écrire dans le script. Cliquez ici pour la source https://github.com/araile/see/blob/develop/see.py
check.
$ python
Python 2.7.10 (default, Jul 14 2015, 19:46:27)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import see
>>> see.see(see)
help() .PY_300 .PY_301 .SYMBOLS .SeeError()
.fcntl .fn_filter() .fnmatch .inspect .line_width()
.re .regex_filter() .see() .struct .sys
.term_width() .termios .textwrap
Comme ça, vous pouvez facilement vérifier ce qu'il y a dans la bibliothèque.
Si vous regardez la sortie, vous pouvez voir qu'elle utilise une bibliothèque standard telle que .re .fnmatch .sys
. Celles avec ()
sont des méthodes, et celles sans ()
sont des variables, donc c'est très facile à comprendre.
Ce serait mieux s'il y avait des informations sur les arguments, etc.
Mes favoris personnels sont «.fn_filter ()» et «.regex_filter ()».
fn_filter (names, pat)
met simplement une itération dans le premier argument et un motif dans le second argument.
Si vous mettez normalement see.see (see)
dans le premier argument, la sortie ci-dessus sera transmise. Le deuxième argument est une expression régulière utilisée dans ShellScript? Si vous le mettez, celui qui correspond au motif sera retourné sous forme de taple.
À propos, «fn» dans «fn_filter» signifie «fnmatch». Ainsi, comme son nom l'indique, cette fonction applique simplement filter
avec fnmatch
.
Voici un exemple simple. Le premier est une variable et le second est une fonction uniquement.
.
Est ajouté au début carrepr ()
et+
sont mélangés en fonction de la bibliothèque.
test_fn_filter.
>>> see.fn_filter(see.see(see), '.*[0-9a-zA-Z]')
('.PY_300', '.PY_301', '.SYMBOLS', '.fcntl', '.fnmatch', '.inspect', '.re', '.struct', '.sys', '.termios', '.textwrap')
>>> see.fn_filter(see.see(see), '.*)')
('.SeeError()', '.fn_filter()', '.line_width()', '.regex_filter()', '.see()', '.term_width()')
Puis regex_filter ()
Encore une fois, comme son nom l'indique, regex est une expression régulière.
Appliquez filter
avec re.match
dans la bibliothèque standard re
et sortez comme un taple.
Par conséquent, le premier argument est le même que fn_filter
, et ledeuxième argument est une expression régulière. Fondamentalement, il est utilisé de la même manière que
fn_filter`, donc l'explication est omise.
Personnellement, fn_filter est utilisé lorsque vous voulez voir des fonctions et des variables, et regex_filter est utilisé lorsque vous voulez trouver quelque chose qui contient une certaine chaîne de caractères.
Vous pouvez voir ce que je n'ai pas expliqué en regardant le code source.
Recommended Posts