teaching:progappchim:notions_avancees

Notions avancées

En construction. Les liens sont juste donnés. Une introduction et un exemple devrait être proposé pour chaque rubrique, et le nombre de ces rubriques augmenté.

  • itertools.cycle() est une méthode utile pour répéter ou parcourir sans fin les éléments d'une liste ou d'une table itérativitertools.accumulate()
  • itertools.accumulate prend un itérable et une fonction d'accumulation, puis renvoie un itérateur.
u = 10
v = 100
reponse = "u plus grand que v" if u > v else "v plus grand ou égal à u"
print(reponse)

FIXME

  • translate() : transformation sur base de correspondances entre des caractères (y compris des caractères spéciaux (\n, \t, \r,…)
    • string.punctuation peut être utilisé pour enlever la ponctuation
  • replace() : remplacement d'une sous-chaîne
  • split() : découpe en une liste de sous-chaînes. Le caractère utilisé par défaut est l'espacement. Le nombre de découpe peut être précisé. rsplit() permet de commencer par la droite.
  • partition() : découpe particulière → myString.partition(“search string”) renvoie un tuple de trois sous-chaînes : ( texte précédent, première occurence de la sous-chaîne cherchée, texte à la suite)
  • strip(), lstrip(), rstrip() : élimine des caractères en début et/ou fin, par défaut les espacements
  • zfill(n) : ajoute des zéros devant pour arriver à une longueur donnée
  • ' '.join() : joint des sous-chaînes en liste pour créer une chaîne en ajoutant ' ' (dans cet exemple) comme sous-chaîne additionnelle
  • upper() : capitalise
  • lower()
  • title() : capitalise les premières lettres des mots
  • swapcase() : inverse capitales et bas de casse
  • startswith('fizz'), endswith('buzz'), 'fizz buzz' in test_string : renvoie True ou False

smtplib et poplib :

import smtplib 
 
HOST = "smtp.mydomain.com"
SUBJECT = "Test email from Python"
TO = "mike@mydomain.com"
FROM = "python@mydomain.com"
text = "blah blah blah"
BODY = "\r\n".join((
    f"From: {FROM}",
    f"To: {TO}",
    f"Subject: {SUBJECT}",
    "",
    text) 
)
server = smtplib.SMTP(HOST)
server.sendmail(FROM, [TO], BODY)
server.quit() 
import poplib
 
mailbox = poplib.POP3('pop3.host.com')
mailbox.user("USERNAME")
mailbox.pass_("PASSWORD")
numMessages = len(mailbox.list()[1])
for i in range(numMessages):
    for j in mailbox.retr(i+1)[1]:
    print(j) 
Ce site web utilise des cookies. En utilisant le site Web, vous acceptez le stockage de cookies sur votre ordinateur. Vous reconnaissez également que vous avez lu et compris notre politique de confidentialité. Si vous n'êtes pas d'accord, quittez le site.En savoir plus
  • teaching/progappchim/notions_avancees.txt
  • Dernière modification : 2023/05/02 10:36
  • de villersd