kr1p a écrit 141 commentaires

  • [^] # Re: iep

    Posté par  . En réponse au message temps d'acces fichier ou bdd. Évalué à 2.

    ok cet effectivement un moyen simple de diviser en paquets.
    vissiblement une autre limitation de sqlite est l'absence de multithreads dans le module python que le gere. ce qui peut etre problématique.

  • # iep

    Posté par  . En réponse au message temps d'acces fichier ou bdd. Évalué à 2.

    merci de vos réponses.
    En fait je fais une petite appli en python qui, pour chaque utilisateur de l'appli, stocke une vingtaine de fichiers tres légers (quelque kilo octet) dans des sous répertoire du nom de l'utilisateur.
    je souhaite mettre ca en ligne prochainement et je ne sais pas encore gérer les bdd avec python, donc je me pose la question de réecrire le code avec gestion de bdd.
    l'appli est tres rapide sur mon pc et dans mes souvenirs d'utilisations de bdd et sql, j'ai généralement trouvé la manipulation des bdd assez lente (indexation etc), d'où ma question.
    je pense qu'avec vos réponses je devrais m'en sortir
    merci

  • [^] # Re: Voir shutil

    Posté par  . En réponse au message gestion des droits os.copy2(). Évalué à 1.

    j'ai essayé avec shutil.copy2() cest la meme chose

  • [^] # Re: au pif

    Posté par  . En réponse au message gestion des droits os.copy2(). Évalué à 1.

    je n'ai pas la permission pour touch
    j'ai la permission pour mkdir
    j'ai la permission pour chmod sur un fichier
    je n'ai pas la permission pour chmod sur un dossier

    comment est ce que je peux remédier à ca avec fusesmb?

  • # au top

    Posté par  . En réponse au message instanciation objet tk.button et appels de fonctions. Évalué à 1.

    merci ca roule

  • [^] # Re: Frame et imbrication d'instances

    Posté par  . En réponse au message exemple d'app python avec gui 'app smartphone'. Évalué à 1.

    iep merci des rappels
    apres test les objets et leurs attributs fonctionnent bien comme des listes

  • [^] # Re: Frame et imbrication d'instances

    Posté par  . En réponse au message exemple d'app python avec gui 'app smartphone'. Évalué à 1.

    Salut,
    je reviens sur cette histoire de controller.
    dans le code plus haut, j'instancie PageOne à partir de l'instance de la classe Appli.
    PageOne fait référence au controller dans sa méthode constructeur et je peux donc utiliser controller.fonctionA ou controller.fonctionB ou controller.attribut dans le déroulée de la methode constructeur.
    Par contre, si je définis une fonction ou une méthode dans ma classe PageOne et que je fais référence à controller (qui est un des arguments de la methode constructeur) il ne comprend plus.
    D'où ma question: est ce que c'est ok de faire un self.controller=controller dans la methode constructeur?
    est ce que ca dédouble pas le constructeur? je sais que pour les listes par exemple a=liste1 et b=a font que a et b sont des alias qui renvoient au meme objet. Mais il n'en est pas de même pour d'autres types d'objets..

    merci

  • [^] # Re: Frame

    Posté par  . En réponse au message exemple d'app python avec gui 'app smartphone'. Évalué à 1.

    ahah putain j'ai du passer une demi heure à chercher
    merci

  • [^] # Re: Frame

    Posté par  . En réponse au message exemple d'app python avec gui 'app smartphone'. Évalué à 1.

    jai un soucis avec la distinction attribut et fonction:
    j'instancie un objet Appli dont la classe est héritée de tk.
    je crée un app=Appli()
    jai définie une fonction à l'intérieur de la classe Appli

        def create_occur(self,date,where):
            print("hello {1} et {2}".format(date,where))
    

    lorsque je fais un app.create_occur("1","2")
    il me met
    AttributeError: '_tkinter.tkapp' object has no attribute 'create_occcur'
    comme si il comprenait pas que c'est une fonction?

  • [^] # Re: Frame

    Posté par  . En réponse au message exemple d'app python avec gui 'app smartphone'. Évalué à 1. Dernière modification le 18 juin 2020 à 18:09.

    une petite question supplémentaire: dans le cas du code ci-dessus, quand on instancie une StartPage, le constructeur de cette classe est défini par

    def __init__(self, parent, controller):
    et la fonction qui l'instancie est définie dans la classe Appli par :

    F(container, self)
    Du coup, le controller de l'instanciation de StartPage est bien l'objet instancié préalablement par la classe Appli, n'est ce pas?

  • [^] # Re: Frame

    Posté par  . En réponse au message exemple d'app python avec gui 'app smartphone'. Évalué à 1.

    ok merci, effectivement le code initial fait référence à controller pour le modèle mvc.
    j'ai trouvé container dans une doc subsidiaire, cest assez incompréhensible: lorsqu'on met cette option sur 1 on a :

    "this window will be used as a container in which some other application will be embedded[…]The window should not have any children of its own in this application"
    En d'autres termes, la frame pourra "embeddé" (contenir) d'autres applications, mais ne devrait pas avoir de "children of its own". Pourtant, si une frame contient d'autre widgets, ces widgets sont bien des "children" de la frame non?

    Pour les autres mots clés master, parent, et boss, cest simplement pour désigner la fenêtre "mère", mais d'apres quelques exemples dans Swinnen y a également le mot clé master qui semble "réservé" dans tkinter, notamment si on instancie un frame sans avoir pré-instancié une fenêtre mère. je me demandais si ces autres mots clés sont potentiellement "réservés" systématiquement mais ca ne semble pas le cas

  • # Frame

    Posté par  . En réponse au message exemple d'app python avec gui 'app smartphone'. Évalué à 1. Dernière modification le 17 juin 2020 à 23:23.

    J'ai trouvé un truc mais jai un petit soucis dans ma compréhension de la bibliothèque tkinter et en particulier de Frame.
    Jai regardé la doc mais je n'ai pas trouvé.
    Ainsi, lorsque j'instancie un Frame dans le code ci-dessous, je ne comprend pas comment la class StartPage définit une "référence" à la fenêtre déjà instancié par Tk.
    Il y a les paramètre boss ou parent ou master que je vois souvent dans les codes ou dans la doc, mais sans que ce soit bien défini. et le parametre controller, mais je ne comprend pas bien. Dans la doc jai également vu le paramètre container=0 par défaut sans qu'il soit expliqué à quoi il sert.
    D'où ma question : comment Tk et Frame interagissent entre eux pour
    J'ai le meme soucis dans un exercice où un bouton instancie une nouvelle fenetre tk et je n'arrive pas à référencer les widgets de la nouvelle fenetre à la fenetre initiale.

    import tkinter as tk
    class Appli(tk.Tk):
        def __init__(self, *args, **kwargs):
            tk.Tk.__init__(self, *args, **kwargs)
            container = tk.Frame(self)
            container.pack(side="top", fill="both", expand = True)
            container.grid_rowconfigure(0, weight=1)
            container.grid_columnconfigure(0, weight=1)
            self.frames = {}#dictionnaire de fonction, chaque fonction    
            for F in (StartPage,Page2,Page3):
                frame = F(container, self)
                self.frames[F] = frame
                frame.grid(row=0, column=0, sticky="nsew")#les pages sont toutes instanciées
            self.page=StartPage 
            self.show_frame(self.page)
        def show_frame(self, cont):
            self.previous=self.page
            self.page=cont
            frame = self.frames[cont]
            frame.tkraise()
    
    class StartPage(tk.Frame):
        def __init__(self, parent, controller):
            tk.Frame.__init__(self,parent)
            label = tk.Label(self, text="Start Page", font=LARGE_FONT)
            label.pack(pady=10,padx=10)
    
            button = tk.Button(self, text="Entrer un évenement",
                                command=lambda: controller.show_frame(CatOne))
            button.pack()
    

    Je ne comprend pas "parent" et "controller". Visiblement

  • # thx

    Posté par  . En réponse au message détecter \. Évalué à 1.

    merci, je pense que ma compréhension s'affinera au fur et à mesure que je coderai et que j'expérimenterai de toute façon

  • # ok

    Posté par  . En réponse au message détecter \. Évalué à 1.

    ok merci
    d'apres ce que j'ai compris les methodes de classe servent notamment à ce que les instanciations puissent "communiquer" entre elles, ou à manipuler une instanciation, elles servent d'interfaces

    Mais dans le cas de la fonction foo() de la classe test Foo,quel est l'intérêt pour un programme python de définir cette fonction à l'intérieur de Foo? on ne pourra l'utiliser que si un objet de classe Foo est instancié, cest bien ca?

    je ne comprend pas bien ce que ca changerait en termes de programmation exactement la meme fonction foo(): mais en la définissant par foo(self):

    Enfin,si on ajoute des argument sans self à la fonction foo(arg1,arg2), et qu'on l'utilise dans une methode (constructeur ou d'autres methodes) en l'appliquant à des paramètre d'une instance Foo par exemple foo(self.age, self.taille), est ce que ca fonctionne? est ce que c'est une "mauvaise" pratique de programmation?

  • # ok

    Posté par  . En réponse au message détecter \. Évalué à 1.

    ok, effectivement, j'ai trouvé tout seul.
    je cherche juste à apprendre, en l'occurence écrire un dictionnaire vers un fichier puis recréer le dictionnaire à partir du fichier.
    j'ai une autre question tant que j'y suis:
    dans un objet
    Class(object):
    si je fais une methode/fonction
    def fonction(argument):
    sans mettre self dans les arguments, qu'est ce que ca change? est ce que je peux invoquer la fonction plus loin dans d'autres méthodes en l'appliquant à self ou est ce que python va bugguer et ne pas comprendre à quoi est rattachée cette fonction à l'interieur des methodes de l'objet?

  • [^] # Re: Par défaut ?

    Posté par  . En réponse au message module désinstallé tout seul. Évalué à 1.

    merci, cest bon j'ai finalement trouvé.
    par contre je n'ai pas compris comment le module s'est désinstallé..

    Y a-t-il des trucs pour "traduire" une interface tkinter en GTK ou Qt?

  • [^] # Re: fuse

    Posté par  . En réponse au message Linux mint 19.3 utiliser fuse pour monter un webdav. Évalué à 1.

    jai essayé d'installer ces librairies mais j'ai eu quelques erreurs en compilant.
    fusedav est téléchargeable dans les dépots par défaut de mon linux mint 19.3 et l'installation s'est bien déroulée.

    fusedav a l'avantage sur davfs2 de se "monter" automatiquement avec une seule ligne dans les applications à lancer au démarrage et l'inconvénient de devoir mettre en clair le nom d'utilisateur et le mot de passe.
    Mais pour mon utilisation (rsync d'un répertoire local) c'est pas mal.

    j'ai cependant un message d'erreur
    PROPFIND failed: 404 Not Found
    qui s'affiche en boucle sans que cela empeche d'accéder et de faire des opérations sur le webdav distant monté sur un répertoire local.

    Quelqu'un sait il d'où vient cette erreur et ce que cela signifie? Est ce lié aux propriétés des fichiers que le protocole webdav ne prend pas en charge?

  • [^] # Re: fuse

    Posté par  . En réponse au message Linux mint 19.3 utiliser fuse pour monter un webdav. Évalué à 1.

  • # fuse

    Posté par  . En réponse au message Linux mint 19.3 utiliser fuse pour monter un webdav. Évalué à 1.

    quelqu'un sait il où je peux trouver le tutoriel pour utiliser fuse avec webdav?

  • [^] # Re: sur une mageia (7)

    Posté par  . En réponse au message Linux mint 19.3 utiliser fuse pour monter un webdav. Évalué à 1.

    jai aussi essayé avec ca, à quoi correspondent les options noexec,nosuid,nodev?

  • # espace disque ok

    Posté par  . En réponse au message Linux mint 19.3 - probleme mot de passe utilisateur. Évalué à 1.

    il n'y a visiblement pas de probleme d'espace disque, je vais réessayer
    en revanche lorsque j'essaie de supprimer les fichiers mentionnés ci dessus en root en ligne de commande j'ai le message d'erreur

    "désolé, l'utilisateur x n'est pas autorisé à /bin/rm blabla en tant que root sur l'ordinateur"

  • # tty

    Posté par  . En réponse au message Linux mint 19.3 - probleme mot de passe utilisateur. Évalué à 1.

    avec le clavier virtuel, jai pus lancer une invite tty et ca se loggue.
    En revanche quand je tappe startx
    j'ai les erreurs suivantes:

    xauth : unable to write authority file /tmp/serverauth.rBEtc3V2R8-n
    xauth : unable to write authority file /home/bepere/.Xauthority-n
    xauth : unable to write authority file /home/bepere/.Xauthority-n

    (EE)
    Fata server errorr:
    (EE) Could not write pid to lock file in /tmp/.tX1-lock
    (EE)
    (EE)
    Please consult the X-Org foundation support at http://wiki.x.org for help
    (EE)
    xinit:giving up
    xinit: unable to connect to X server: Connection refused
    xinit: server error

  • [^] # Re: partition saturée

    Posté par  . En réponse au message Linux mint 19.3 - probleme mot de passe utilisateur. Évalué à 1. Dernière modification le 05 juin 2020 à 18:24.

    df -i me donne une utilisation de 6% sur /

  • [^] # Re: autres suggestions?

    Posté par  . En réponse au message Linux mint 19.3 - probleme mot de passe utilisateur. Évalué à 1.

    ce raccourci clavier ne fonctionne pas depuis la fenetre de "connexion utilisateur". est ce que ce n'est pas un autre raccourci clavier pour passer en mode console?
    merci

  • # lightdm.conf

    Posté par  . En réponse au message Linux mint 19.3 - probleme mot de passe utilisateur. Évalué à 1.

    J'ai ajouté une session invité dans lightdm.conf mais quand je me connecte sur la session invité, j'ai le meme écran noir qui buggue (donc visiblement cest tres indirectement le mot de passe le probleme).
    J'ai essayé avec le clavier virtuel aussi mais ca ne fonctionne pas