Marotte ⛧ a écrit 8846 commentaires

  • [^] # Re: Je ne ferais pas ça comme ça.

    Posté par  . En réponse au journal Analyse de texte. Évalué à 2.

    En incluant les suites telles que "a ma" je peux toujours par la suite filtrer avec une expression régulière pour n’avoir que les mots.

  • [^] # Re: occurrence des mots

    Posté par  . En réponse au journal Analyse de texte. Évalué à 3.

    C’est volontaire de vouloir prendre les signes de ponctuation…

    Pour moi 'mice' et 'mice.' ne sont pas deux chaînes identiques. De la deuxième on peut présager que le mot « mice » a des chances de terminer une phrase. À part le remplacement des retour à la ligne par des espaces puis la réduction des espaces consécutives à une seule espace je travaille en mode suite de caractères.

  • [^] # Re: Je ne ferais pas ça comme ça.

    Posté par  . En réponse au journal Analyse de texte. Évalué à 3.

    en fait tu sembles vouloir compter n'importe quel groupe de lettres…

    Oui c’est ça. N’importe quel groupe de caractères en fait.

    C'est quoi le but?

    Y’en a pas vraiment… je fais des essais on va dire…

  • [^] # Re: On dirait du C

    Posté par  . En réponse au journal Analyse de texte. Évalué à 2.

    Merci pour tous ces conseils avisés ! Surtout pour le collections.Counter je pense que ça va me servir…

    import fileinput
    for line in fileinput.input():

    Ma ligne peut avoir une longueur variable. J’aurais toujours besoin de la traiter en morceau de N caractères car je ne vais pas itérer sur tous les caractères de la ligne si je n’ai pas besoin de conserver des chaînes de plus de N caractères. J’ai également besoin d’avoir la fréquence de chaînes telles que "titi\ntoto" je devrais donc conserver un certain nombre de caractères de la ligne précédente à chaque fois…

    J’ai trouvé plus simple d’avoir une sorte de « fenêtre » (buf) qui va « glisser » sur mon entrée… Par exemple si je prends un MAXLEN de 2 et que mon entrée est "abcd\n" j’aurais tour à tour :

    • ab
    • bc
    • cd
    • d\n

    Avec MAXLEN à 3 j’aurais, en plus :

    • abc
    • bcd
    • cd\n

    si tu crois que tu as besoin de gérer la mémoire toi-même en Python

    Non, j’ai bien conscience que ce n’est pas à moi de gérer la mémoire.

  • [^] # Re: Je ne ferais pas ça comme ça.

    Posté par  . En réponse au journal Analyse de texte. Évalué à 3.

    As-tu au moins essayé de mettre une trace entre l’analyse du texte et la mise à jour de la base de données pour en être sûr ?

    Je le vois simplement grâce au sys.stderr.write(…) qui est fait entre chaque étape, la première étape (chargement) et la deuxième (suppression des chaînes qui coupent des mots en deux, sauf les petites…) s’exécutent en un temps acceptable.

    Personnellement, je lirais l’entrée par ligne, je splitterais sur les espaces et signes de ponctuation (ou tout ce qui n’est pas une lettre), comme ça, j’aurais directement les mots et ensuite seulement, pour chaque mot, j’itérerais sur la lettre de départ et la longueur pour avoir les groupes de lettres.

    En faisant ça si j’ai une première ligne qui contient "voici une première ligne" et une seconde qui contient "et là une deuxième" je n’aurais pas d’entrée créée contenant le dernier mot de la première et le premier de la deuxième ("ligne et"). Je n’aurais pas non plus 'e e', 'e et', etc… (je remplace systématiquement "\n" par "n"…)

    J’utilise donc un tampon de MAXLEN caractères qui se décale de MAXLEN-1 caractères à chaque fois afin que le dernier caractère du précédent tampon se retrouve premier du tampon suivant. Pour ça un deque me semblait plus adapté qu’un string

    je chargerais tout le texte en mémoire (mon premier ordinateur avait 8 Ko de mémoire

    Comme tu peux le voir le programme lit l’entrée standard, pour l’instant il attend EOF pour traiter les données mais à terme je veux qu’il puisse tourner en continue, en faisant un màj de la base tous les N tampons/caractères.

  • [^] # Re: nltk

    Posté par  . En réponse au journal Analyse de texte. Évalué à 3.

    si considérer le texte comme un sac de mots te suffit

    Comme un sac de caractères même… :)

    Je me pencherai sur NLTK un de ces jours ça a l’air bien mais là je veux une approche plus « bête », basée seulement sur les fréquences d’apparition.

  • [^] # Re: nltk

    Posté par  . En réponse au journal Analyse de texte. Évalué à 2.

    Très intéressant, merci.

  • [^] # Re: En memoire

    Posté par  . En réponse au journal Analyse de texte. Évalué à 2.

    [edit: vas y efface, c'est ce que tu fais deja j'ai mal lu ton code]

    Euh… bah non :)

    Utiliser time() je sais faire mais je ne l’ai pas fait ici, je lance simplement le script précédé de la commande time. Vu la sortie d’erreur je sais à peu près combien de temps prend chaque étape. Je remarque nettement que ça va à une vitesse correct quand la base est vide (donc que les INSERT aboutissent).

    A priori, ta structure de donnee comptant les syllabes/mots ne devraient pas augmenter lineairement avec la taille de tes textes

    Oui. Plus les textes passeront plus il aura de mises à jour et moins d’insertions.

    Pourquoi ne pas stocker l'information en memoire (et ne la mettre dans la base de donnee qu'a la fin)

    C’est ce que je vais faire.

  • [^] # Re: on teste le seuil bas de moinsage ?

    Posté par  . En réponse au journal La fin de la fin.. Évalué à 2.

    En te moinssant je participe à 33% de ta note à moi tout seul, ça me console.

  • [^] # Re: DMP et SESAM-Vitale: des certifications aussi

    Posté par  . En réponse au journal la fin des logiciels libres de comptabilité et de gestion de caisses. Évalué à 2. Dernière modification le 15 décembre 2015 à 02:01.

    Je demande parsque les kits de developement four-tout avec de multiples versions des protocoles rendent parfois les dévelopements triviaux

    Je viens de tomber sur ton commentaire. Est-ce que par « trivial » tu ne voulais pas tout à fait signifier l’inverse ?

    Parce que la définition de « trivial » c’est :

    Qui est banal, commun, qui relève du simple bon sens, de la réalité la plus évidente

    alors que « kits de developement four-tout avec de multiples versions des protocoles »

    ça pue un peu la complexité…

    http://www.larousse.fr/dictionnaires/francais/trivial

    :)

  • # Erratum

    Posté par  . En réponse au journal Analyse de texte. Évalué à 2.

    Le premier commentaire est erroné :

    s/~which don't match~/which match/

  • [^] # Re: false

    Posté par  . En réponse au journal Le core utile. Évalué à 4.

    Le genre de code qui va (si je n’y suis pas habitué pour une raison ou une autre) me nécessiter une heure pour rechercher sur le web et assimiler (c’est à dire accepter en son âme de codeur, profondément, que cela puisse pertinemment s’écrire ainsi…) avant de passer à la suite du code…

    J’ai dit « concis && élégant », j’aurais du ajouter lisible pour le commun des programmeurs :)

    Il faut reconnaître que l’« expansion de variable » en shell c’est une des caractéristiques de ce genre de langage et c’est rudement pratique.

  • [^] # Re: false

    Posté par  . En réponse au journal Le core utile. Évalué à 2.

    $ if (rm test); then echo ok; fi
    rm: cannot remove `test': No such file or directory
    $ touch test; if (rm test); then echo ok; fi
    ok
    

    Bah c’est justement ce que je dis, dans le premier cas la commande a un code retour ≠ 0 la condition est fausse alors que dans la deuxième le code retour est 0 est la condition est vrai :

    ≠ 0 implique faux
    0 implique vrai

    Donc c'est plus logique d'attribuer 0 à ok et !0 à toutes les situations non ok.

    Oui mais quand on apprend la logique on note 0 = faux et 1 = vrai, c’est le contraire en shell.

    Dans les autres langages de programmation on également plutôt l’habitude qu’une valeur différente de zéro soit évaluée vraie et zéro soit évalué faux.

  • [^] # Re: Des oublis ?

    Posté par  . En réponse au journal Le core utile. Évalué à 2.

    est-ce une bonne idée de s'en servir

    Ça t’évite de finir par devoir retaper deux fois des commandes quand tu te retrouves sur un AIX qui ne connaît que more, parce que tes doigts tapent less plus vite que ton cerveau ne réfléchit ^^

    D’après le man de more:

    Cette version est particulièrement primitive. Les utilisateurs doivent se convaincre que
    less(1) constitue une excellente émulation de more(1) avec en plus de nombreuses améliorations.

    Le fait que ce programme soit toujours disponible ne serait-il pas lié à la norme POSIX ?

  • [^] # Re: false

    Posté par  . En réponse au journal Le core utile. Évalué à 5.

    Entre le programme true, et le programme [ , je trouve que le shell c'est de la bidouille …

    C’est horrible ce [… genre if [ -z $v ]; then… ça ressemble à quoi ? :) On peut même ôter le crochet fermant qui n’est autorisé par le langage que pour la seule bonne raison qu’un crochet ouvert qui reste ouvert c’est très grave… presque autant qu’une parenthèse !

    Maintenant j’essaie d’écrire : if test -z $v; then… c’est bien ce qu’il y a de plus logique et clair à lire selon moi.

    Oui le shell c’est spécial comme « langage de programmation » vu que ce n’en ai pas vraiment un.

    En m’y mettant j’ai eu un peu de mal avec la logique binaire… On a l’habitude de considérer que 1 représente vrai et 0 représente faux, or le code retour des programmes c’est 0 pour OK, par convention. Si je fais un if (rm toto) et que la commande « plante » (parce que le fichier toto n’existe pas par exemple) ma condition sera fausse.

    L’utilisation des opérateurs && et || entre plusieurs commandes permet souvent d’être concis et élégant, je trouve.

  • # Mais que fait la police ?

    Posté par  . En réponse au journal Tentative d'escroquerie téléphonique. Évalué à 0.

    Elle protège et elle sert !

    C’était sûrement l’auto-dialer (de Marge)… Ne t’inquiète pas c’est réglé.

    https://www.youtube.com/watch?v=nbbIXMDGb_w

  • # Mes deux centimes

    Posté par  . En réponse au message Problème de paramétrage de langue ?. Évalué à 1.

    C’est marrant j’ai eu exactement le même bug sous Firefox sous Windows pendant un moment, bien que le dictionnaire FR ait été installé ça repassait systématiquement à l’anglais… J’ai plus le problème depuis une ou deux versions. Un problème avec le plugin peut-être…

    Par contre j’ai la même chose dans Outlook, qui par en sucette si j’ai le malheur de devoir écrire un mail dans les deux langues en même temps… et là j’ai même pas trouvé comment re-switcher vite fait :)

  • [^] # Re: bof

    Posté par  . En réponse au journal Notepad++ et FN ; ou quand un développeur parle d'autre chose que de développement. Évalué à 2.

    Là, ça fait coup de canif dans le contrat.

    Mouaif… il a pas changé la licence de son logiciel hein… Je pense qu’il s’est dit à juste titre qu’il toucherait plus de monde en utilisant ce compte, plus « pro », vu que c’est aussi le sien je vois pas pourquoi il aurait du se gêner…

  • [^] # Re: Budget

    Posté par  . En réponse au journal La fin de Firefox OS. Évalué à 6.

    firefox a toujours souffert de fuites mémoire […] la RAM utilisée ne cessait de s'accroitre sans raison.

    C’était vrai pendant un temps mais j’ai l’impression que c’est corrigé. En tous cas j’ai plus de problème de fuite mémoire depuis un petit moment maintenant.

    Là j’ai que onze onglets, quelques plugins, Iceweasel est stable à 1GB de mémoire virtuelle. Au boulot sous Windows avec plus d’onglets et plus de plugins c’est en deça (quelques centaines de MB).

    Le seul souci que j’ai de temps à autre avec Firefox/Iceweasel c’est une utilisation CPU à 100% (qui fige l’UI) à cause de scripts Javascript foireux…

  • [^] # Re: Juste un point

    Posté par  . En réponse au journal "Tout le monde peut être une cible". Évalué à 5.

    Récupérer un territoire anéanti par des bombardements où la moitié des civils sont morts ce n’est pas très intéressant et c’est normalement interdit. Pour neutraliser une armée et récupérer un territoire il faut toujours des troupes au sol.

    Dans le cas du Japon il ne s’agissait pas de récupérer un territoire et la plupart des victimes des deux bombes atomiques furent des civils.

  • [^] # Re: Mises à jour

    Posté par  . En réponse au message Mises à jours sous Linux - Ubuntu. Évalué à 2.

    j'ai déjà effectué une mise à niveau il y a quelques mois pour la dernière version, la 15.10 je pense. Un ami m'a expliqué que parfois il faut attendre un peu avant de faire la mise à niveau pour être sure que la nouvelle version soit traduite en français, est-ce vrai ?

    Plus ou moins, de manière générale quand on migre tôt on a toujours un risque d’« essuyer les plâtres » comme on dit.

    La 15.10 est la dernière version stable non LTS, son support (mises à jour de sécurité) s’arrêtera en juillet 2016, à ce moment là tu devras forcément encore changer de version, en 16.04 LTS (qui sortira en mars 2016). Puis en octobre 2016 tu auras à nouveau le choix entre : 1- rester sur la 16.04 ou 2- passer en 16.10…

    J’ai l’air d’insister mais ce principe de LTS (Long Term Support) me paraît assez important. Ça peut être chiant de devoir mettre à niveau tous les six mois, sauter de version LTS en version LTS te permet de ne faire ce saut que tous les deux ans et de conserver la même version de tes logiciels pendant ce laps de temps…

    Pour flash c’est vraiment compliqué… Toute l’histoire ici.

    L’article dit que tu peux installer Chrome (le navigateur made by Google) qui dispose d’une version plus récente de ce greffon. C’est à essayer… Tu peux même peut-être utiliser Chromium, c’est la version libre de Google Chrome, qui est disponible dans la logithèque Ubuntu.

    À tous hasard, le plugin est bien installé ? Tu peux voir la liste des plugins installés en tapant about:plugins dans la barre d’adresse de Firefox. Si ce n’est pas le cas le package à installer s’appelle libflashplugin-installer
    ```

  • [^] # Re: Oui

    Posté par  . En réponse au message Mises à jours sous Linux - Ubuntu. Évalué à 2.

    ça qui bug

    C’est à dire ? Flash ne fonctionne pas ou bien tu as juste un message lors des mises à jour ?

  • [^] # Re: Oui

    Posté par  . En réponse au message Mises à jours sous Linux - Ubuntu. Évalué à 3.

    Pour les autres applications Adobe vous trouverez des équivalents sous Ubuntu tout aussi efficaces.

    Tous aussi efficace ce n’est pas toujours vrai. Concernant le format PDF, le support de certaines des dernières fonctionnalités développées par Adobe est parfois absent chez les équivalents libres.

    Une mise à jour empêche une application malveillante d’utiliser une faille connue également, en la bouchant…

  • # Mises à jour

    Posté par  . En réponse au message Mises à jours sous Linux - Ubuntu. Évalué à 2.

    Il y a deux types de mises à jour.

    Dans ton cas il s’agit probablement des mises à jour dites « de sécurité » qui ne concernent que la correction de problèmes logiciels importants (failles de sécurité potentielles bien souvent), tu dois les faire le plus régulièrement possible, il est déconseillé de les repousser (parce que tu n’as pas le temps par exemple) plus de quelques jours.

    Ensuite il y a les mises à jour vers une version suivante du système. Il est possible que tu es un jour un message t’invitant à le faire. À ce moment tu auras le choix et ne devra pas systématiquement l’effectuer. Tu devrais aviser selon tes prérogatives… cette mise à jour est plus importante et changera plus de chose sur ton système.

    Tu seras par contre obligé de faire ce « saut de version » à partir d’un certain moment car bien évidemment toutes les versions ne peuvent pas durer éternellement…

    Tu peux aller lire la page Wikipédia consacrée aux versions d’Ubuntu, notamment le tableau récapitulatif.

    Dans les paramètres des mises à jour tu peux aller voir comment c’est configuré chez toi. La configuration par défaut est probablement OK, ne change rien si tu n’es pas sûre de ce que tu fais.

    À priori tu utilises la version 14.04 LTS ou bien peut-être la 15.10… C’est bien préciser la version qu’on utilise, surtout pour une question concernant les mises à jour ;)

    Pour ce qui est de Adobe. Tu parles du plugin flash utilisé dans le navigateur ou bien du lecteur pour les PDF (Adobe Reader) ? Pour le premier tu n’as pas à t’en soucier (il y aura une mise à jour de sécurité si c’est nécessaire) et pour le deuxième, sous Ubuntu c’est un autre programme qui est utilisé par défaut pour lire ce type de fichier mais Adobe Reader peut être installé si besoin.

  • [^] # Re: re

    Posté par  . En réponse au message Isoler les données de chaque application. Évalué à 3.

    un système complet

    Sans noyau.

    Pour Debian il y a un programme pour ne pas avoir à le faire à la main, c’est expliqué en français ici.

    tu chroot dedans, et après ?

    Après tu y installes ton (tes) programmes avec apt-get.