Problème CLI python

Fermé
a.b - Modifié le 25 déc. 2020 à 21:00
 a.b - 26 déc. 2020 à 15:05
Bonjour,

Je suis en train de programmer une CLI. J'essaye par exemple de lancer ça sur main.py :
from filtre import noirblanc, dilatation, floue
import sys, os

arg = sys.argv
premier_arg = arg[1]


if premier_arg == "floue":
    dilatation.dilatation()


Ensuite sur la CLI j'essayer d'exécuter main.py et voilà le souci :

(venv) alfa@MacBook-Pro-de-Alpha python-filter-project % python main.py floue
Traceback (most recent call last):
File "main.py", line 1, in <module>
from filtre import noirblanc, dilatation, floue
File "/Users/alfa/Documents/L1-Dev/python/python-filter-project/filtre/noirblanc.py", line 18
chemin = f"{image}/{photo}"
^
SyntaxError: invalid syntax
(venv) alfa@MacBook-Pro-de-Alpha python-filter-project %

Voici le fichier qui contient la fonction appelé :
# Importation des bibliotheques
import cv2
import numpy
import os
import log


# Variable pour contenir le chemin au images
image = '../data/img'
# La variable "ficher" va contenir les elements du dossier "img"
element = os.listdir(image)


def dilatation():
    """
    Fonction qui transforme les images en dilates dans le repertoire "output"
    """
    try:
        for photo in element:
            chemin = f'{image}/{photo}'
            kernel = numpy.ones((5, 5), numpy.uint8)
            a_traiter = cv2.imread(chemin)
            img_dilatation = cv2.dilate(a_traiter, kernel, iterations=3)
            cv2.imwrite(f'../data/output/{photo}', img_dilatation)
            log.msg_filter(photo, 'dilate')
    except cv2.error as e:
        print(e)



Je fais des recherches mais je n'arrive pas à trouver la solution. Si c'est possiblee de m'aiguiller.
Je vous remercie :)






Configuration: Macintosh / Chrome 84.0.4147.105
A voir également:

2 réponses

yg_be Messages postés 23528 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 avril 2025 Ambassadeur 1 578
25 déc. 2020 à 22:06
bonjour,
bizarre, le message d'erreur inclut
chemin = f"{image}/{photo}"
, et le code que tu nous montres est
chemin = f'{image}/{photo}'
.
de plus, les numéros de lignes ne correspondent pas.

quelle version de python utilises-tu?
import sys
print("Python version")
print ("Python version: ",sys.version)
1
yg_be Messages postés 23528 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 avril 2025 1 578
25 déc. 2020 à 22:32
as-tu essayé
chemin = image + "/" + photo
0
Python 3.7 sur Mac
0
peut-être que voilà :

version python
2.7.16 (default, Jun 5 2020, 22:59:21)
[GCC 4.2.1 Compatible Apple LLVM 11.0.3 (clang-1103.0.29.20) (-macos10.15-objc-
0
yg_be Messages postés 23528 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 avril 2025 1 578 > yg_be Messages postés 23528 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 avril 2025
26 déc. 2020 à 13:22
as-tu essayé?
0
a.b > yg_be Messages postés 23528 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 avril 2025
Modifié le 26 déc. 2020 à 13:23
Oui, mais ça ne change rien, j'ai toujours le problème avec cv2
0
yg_be Messages postés 23528 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 avril 2025 Ambassadeur 1 578
26 déc. 2020 à 14:07
d'où vient le le fichier qui contient la fonction appelée?
l'as-tu écrit toi-même?
si tu veux réutiliser du code écrit par d'autres, je suggère d'utiliser une version plus récente de python.
0
Le fichier en question est dans un package qui s'appelle "Filtre". J'aimerai bien que tu me dises comment mettre à jour exactement l'application s'il te plait. Parce que j'ai essayé mais pour l'instant rien.
0