python
- Reference
- List files
- print path to all subdirectories first.
- print path to all filenames.
- Advanced usage:
- !PIP
- Setup Virtual Environment
- Lancer un serveur HTTP dans un dossier
- Notes
- ftplib
Reference
https://www.python.org/doc/
List files
import os
for dirname, dirnames, filenames in os.walk(‘.’):
print path to all subdirectories first.
for subdirname in dirnames:
print(os.path.join(dirname, subdirname))
print path to all filenames.
for filename in filenames:
print(os.path.join(dirname, filename))
Advanced usage:
editing the ‘dirnames’ list will stop os.walk() from recursing into there.
if '.git' in dirnames:
don’t go into any .git directories.
dirnames.remove('.git')
!PIP
Qu’est-ce que pip
? C’est l’équivalent de gem ou npm pour Ruby et Node. Un gestionnaire de paquets.
Setup Virtual Environment
http://docs.python-guide.org/en/latest/dev/virtualenvs/#virtualenvironments-ref Pré-requis : http://docs.python-guide.org/en/latest/starting/install3/linux/#install3-linux Docs : https://virtualenv.pypa.io/en/stable/userguide/
Create a virtualenv
$ cd my_project_folder
$ virtualenv my_project # Crée un dossier my_project dans my_project_folder
Start it
source my_project/bin/activate
Stop it
deactivate
Lancer un serveur HTTP dans un dossier
python -m SimpleHTTPServer
Notes
for on peut looper dans un tableau, ok, mais aussi directement dans une chaine de caractères. Basically une str, c’est un tableau.
phrase = "salut toi"
for letter in phrase:
print (letter)
Output
s
a
l
u
t
t
o
i
if {something} in {somewhere}
phrase = "salut toi"
for letter in phrase:
if letter in "a":
print("trouvé")
else :
print("pas de a")
loope dans {somewhere} et compare. La première fois, j’avais fait un truc bien plus verbeux, à base de boucle dans une boucle
Là, le output
pas de a
trouvé
pas de a
pas de a
pas de a
pas de a
pas de a
pas de a
pas de a
ftplib
dir vs nlst
connection_infos={
'host': 'host.fr',
'user': 'username',
'passwd': '13245678'
}
ftp = ftplib.FTP(**connection_infos)
ftp.dir() # retourne la liste des infos. Il contient un print. Il est de type NONE
ftp.nlst() # et ça, c'est un objet de type LIST/ARRAY, qui contient également tous les éléments du dossier
# là, ça ne retourne rien. Il faut faire
print(ftp.nlst()) # pour voir le contenu