comme ça question Je veux passer une fonction avec des arguments. Mais je veux passer aux fonctions intégrées.Python: Passer des fonctions avec des arguments à une fonction intégrée?
Exemple:
files = [ 'hey.txt', 'hello.txt', 'goodbye.jpg', 'howdy.gif' ]
def filterex(path, ex):
pat = r'.+\.(' + ex + ')$'
match = re.search(pat, path)
return match and match.group(1) == ex)
je pouvais utiliser ce code avec une boucle et une instruction if, mais il est plus court et peut-être plus lisible à utiliser un filtre (func, seq). Mais si je comprends bien, la fonction que vous utilisez avec le filtre prend seulement un argument qui est l'élément de la séquence.
Alors je me demandais s'il était possible de passer plus d'arguments?
Utilisez une compréhension de la liste. Il sera plus rapide que le filtre et plus facile à lire –
Vous avez quelques fautes de frappe. Il devrait 'match =', et 'return True' (ou vous pouvez juste' retourner match et match.group (1) == ex') –
Merci Matthew je l'ai ajusté. – Pickels