Path: ...!weretis.net!feeder8.news.weretis.net!news.mixmin.net!aioe.org!TRK/oqkT5dynzPYO4XPaDw.user.46.165.242.91.POSTED!not-for-mail From: Dominique Newsgroups: fr.comp.lang.python Subject: =?UTF-8?Q?Comportement_=c3=a9trange_avec_IN_et_OR=2e=2e=2e?= Date: Thu, 26 May 2022 10:29:23 +0200 Organization: Aioe.org NNTP Server Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: gioia.aioe.org; logging-data="51737"; posting-host="TRK/oqkT5dynzPYO4XPaDw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org"; User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.9.0 X-Notice: Filtered by postfilter v. 0.9.2 Content-Language: fr Bytes: 2349 Lines: 60 Bonjour, Je dois commettre une erreur, mais je ne vois pas laquelle. J'extrais une unique ligne d'un fichier log : test='[22118.286892] i915 0000:00:02.0: [drm] *ERROR* AUX C/DDI C (TC)/PHY TC1: did not complete or timeout within 10ms (status 0xad4003ff)' Si je fais : 'ERR' in test Out[122]: True Le TRUE est valable, car il y a bien le mot ERRROR. Pour travailler sur des 'mots', je transforme mon string en une liste : test2=list(test.split(' ')) On poursuit test2[4] Out[127]: '*ERROR*' Tout est logique. Ensuite, je comprends moins bien : 'ERR' in test2 Out[129]: False Or, '*ERROR*' in test2 Out[130]: True D'accord, dans une liste, Python cherche une occurrence exacte. Si je poursuis mes recherches : '*ERROR*' or 'ERR' in test2 Out[131]: '*ERROR*' Il me sort *ERROR* alors que je voulais simplement une sortie booléenne, mais peu importe. Je remplace test2[4] avec 'essai' (je supprime *ERROR*) et j'ajoute 'ERR' à test2 ; test2[4]='essai' puis test2.append('ERR') Test2 est correctement modifiée. Or, si je fais ça : '*ERROR*' or 'ERR' in test2 Out[137]: '*ERROR*' Il me retrouve le mot'*ERROR*' que j'ai supprimé et pas 'ERR' que j'ai ajouté ! C'est d'autant plus étrange que 'ERRE' est bien trouvé : 'ERR' in test2 Out[138]: True Qu'est-ce qui peut expliquer ce comportement ? Je vous remercie pour votre éclairage, Dominique