Notebook Articles

Take notes and save or share what you have learned

Articles: 496

How to check if a file exists in fortran 90 ?

To check if a file exists in fortran 90, there is a fortran function called [INQUIRE](http://docs.oracle.com/cd/E19957-01/805-4939/6j4m0vna3/index.html). Example of a fortran code (called here "test.f90"): program test logical :: file_exists INQUIRE(FILE="inputs.txt", EXIST=file_exists) write(6,*) file_exists end Compilation gfortran test.f90 -o test test will return: F if the file inputs.txt does not exist T if the file inputs.txt exists ### Re

String to float conversion with python

To convert a string to a float, one can use the python built-in function called [float()](https://docs.python.org/2/library/functions.html#float), example: >>> s = '3.1415' >>> type(s) <class 'str'> >>> s = float(s) >>> type(s) <class 'float'> However, if the string variable can't be converted to float, the following error message appears: ValueError: could not convert string to float: To avoid that, we can process as below: >>> try: ... float(s)

Convertir une chaîne de caractères en float sous python

Pour convertir une chaîne de caractères en float sous python on peut utiliser la fonction "built-in" intitulée [float()](https://docs.python.org/2/library/functions.html#float), exemple: >>> s = '3.1415' >>> type(s) <class 'str'> >>> s = float(s) >>> type(s) <class 'float'> Cependant si la chaîne de caractères ne peut pas être convertie en float on va obtenir le message d'erreur suivant ValueError: could not convert string to float: pour éviter cela on peut procéd

How to sum a list of numbers in python ?

To sum a list of numbers in python, there is the built0in function [sum()](https://docs.python.org/2/library/functions.html), exemple >>> list = [1,2,3,4] >>> sum(list) 10 Another exemple with floats: >>> l = [3.1,2.5,6.8] >>> sum(l) 12.399999999999999 Another exemple with a list of int, floats and strings: >>> sum([i for i in l if isinstance(i, int) or isinstance(i, float)]) 4.12 Note: to concatenate a list of strings use [join()](https://docs.python.org/2/

Rendre son site "mobile-friendly" avec bootstrap

Simple guide rapide sur quelques points clés pour rendre son site "mobile-friendly" avec bootstrap. La première étape consiste a tester si son site est "mobile-friendly". Pour cela il existe plusieurs approches. Pour tester un site déjà en ligne on peut par exemple utiliser l'outil de [google](https://search.google.com/test/mobile-friendly?utm_source=mft&utm_medium=redirect&utm_campaign=mft-redirect) (noter qu'il existe aussi d'autres [tests](https://www.searchenginepeople.com/blog/150441155-mob

How to create a list of numbers in python ?

To create a list of numbers, several approaches exist with python. One can for example uses the [List Comprehensions](http://python-3-patterns-idioms-test.readthedocs.io/en/latest/Comprehensions.html) or the built-in function [list()](https://docs.python.org/2/library/functions.html#list). Illustration, let's assume that we want a list of integers between 0 and N, we can then use the range(N) function: >>> l = [i for i in range(10)] >>> l [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> l = l

How to get the last element of a list in python ?

Simple example on how to get the last element of a list in python >>> a = [5,2,7,8] >>> a[-1] # gets the last element 8 Another example on how to get the last but one element of a list in python: >>> a[-2] # gets the second to last 7 ### References Liens | Site ------------- | ------------- [Data Structures](https://docs.python.org/2/tutorial/datastructures.html) | Python Doc [How to get the last element of a list?](http://stackoverflow.com/questions/930397/how-to-get

Arguments en ligne de commande en Fortran

Pour mettre des arguments d'entrées en compilant un programme fortran il existe la fonction intrinsèque [GETARG](https://gcc.gnu.org/onlinedocs/gfortran/GETARG.html). Un exemple minimaliste de programme fortran (test_getarg.f90): program test_getarg integer :: i character(len=32) :: arg do i = 1, iargc() call getarg(i, arg) write (6,*) arg end do end program Pour compiler ce code: gfortran test_getarg.f90 -o test_getarg. L'execution du code avec les arguments arg1 arg2 a

Comment transformer les lettres majuscules en minuscules d'une chaine sous python

Pour transformer les lettres majuscules en minuscules d'une chaine sous python il existe la fonction [lower](https://docs.python.org/2/library/string.html): >>> s = "HELLO" >>> s = s.lower() >>> s 'hello' Si on veut transformer les lettres majuscules en minuscules sauf la première lettre on peut utiliser [capitalize() ](https://www.geeksforgeeks.org/string-capitalize-python/): >>> s = 'HELLO WORLD' >>> s.capitalize() 'Hello world' Note: avec le web

Construire une fonction de répartition et la tracer avec python

Pour créer et tracer une fonction de repartition avec python, on peut utiliser la fonction numpy [cumsum](https://docs.scipy.org/doc/numpy/reference/generated/numpy.cumsum.html), exemple: [images:cumulative-distribution-01;cumulative-distribution-cumsum dim:1*2 size:100 caption:Construire une fonction de répartition et la tracer avec python] from random import gauss import matplotlib.pyplot as plt import numpy as np N = 10000 x = np.random.normal(size = N) #--------------------------

Vérifier si une variable passée dans un template est vide sous django

Soit par exemple une variable ("my_variable") de type "string" passée dans un template: def my_view(request): .. .. my_variable = '' context = {my_variable} return render(request, "my_app/my_template.html", context ) pour vérifier dans le template si la variable est vide on peut procéder comme suit: {% if my_variable %} do something {% else %} do something else {% endif %} ### Références Liens | Site ------------

Comment mettre un lien en forme de bouton avec bootstrap

Pour avoir un simple lien qui ressemble à un bouton sur bootstrap, on peut utiliser la syntaxe suivante: <a href="" class="btn btn-info">link</a> [image:link-button-like size:100 caption:Comment mettre un lien en forme de bouton avec bootstrap ] illustration <!DOCTYPE html> <html lang="en"> <head> <title>Bootstrap Example</title> <meta charset="utf-8"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <script src="http

Comment sous django filtrer une requête avec une condition de non égalité

Avec django, pour filtrer une requête avec une condition de non égalité, sur la base de données dans un view.py fichier, il faut utiliser la fonction [exclude](https://docs.djangoproject.com/en/2.0/ref/models/querysets/#django.db.models.query.QuerySet.exclude), exemple: note_list = note.objects.exclude( year = 2008 ) et pas: note_list = note.objects.filter( year != 2008 ) sinon on peut obtenir le message d'erreur suivant: [Python- positional argument follows keyword argument](https:/

Obtenir la date d'aujourd'hui au format YYYY-MM-DD avec python

Pour obtenir la date d'aujourd'hui au format YYYY-MM-DD avec python, on peut utiliser la fonction [strftime](http://strftime.org/), exemple: >>> import datetime >>> datetime.datetime.today() datetime.datetime(2018, 2, 13, 22, 25, 0, 693541) >>> datetime.datetime.today().strftime('%Y-%m-%d') '2018-02-13' >>> ### Références Liens | Site ------------- | ------------- [Getting today's date in YYYY-MM-DD in Python?](https://stackoverflow.com/questions/32490629/getting-to

Vérifier si une chaîne de caractères peut être convertie en entier sous python

Pour vérifier si une chaîne de caractères peut être convertie en entier sous python, on peut par exemple passer par la méthode [isdigit()](https://www.tutorialspoint.com/python/string_isdigit.htm), illustration: >>> s = '17' >>> type(s) <class 'str'> >>> s.isdigit() True >>> if s.isdigit(): ... s = int(s) ... >>> type(s) <class 'int'> autre exemple >>> s = 'abc' >>> type(s) <class 'str'> >>> s.isdigit() False ### Références L

Obtenir la date et l'heure courante avec python

Pour obtenir la date et l'heure sous python il y a le module [datetime](https://docs.python.org/2/library/datetime.html): >>> import datetime Pour avoir la date et l'heure courante il faut utiliser la méthode now(): >>> date = datetime.datetime.now() >>> str(date) '2016-11-19 09:38:51.754029' l'année >>> date.year 2016 le mois >>> date.month 11 le jour >>> date.day 19 l'heure >>> date.hour 9 les minutes >>> date.minute 38 les

Retrouver l'adresse url de la page web visitée précédemment avec django ?

Note: Si l'objectif est de retrouver l'adresse url de la page web visitée précédemment pour mettre en place un lien pour revenir en arrière, on peut tout simplement utiliser javascript dans le template ***html*** (voir l'[article](/Articles/Comment-créer-un-lien-pour-revenir-à-la-page-web-précédente/) précédent) comme ceci: <a href="javascript:history.go(-1)">Retour</a> On peut aussi récupérer l'adresse url de la page précédemment visitée directement dans ***views.py*** avec la commande

Comment créer un lien pour revenir à la page web précédente

Pour récupérer l'adresse url précédemment vue par un visiteur on peut utiliser javascript comme ceci (voir aussi [History back() Method](https://www.w3schools.com/jsref/met_his_back.asp)): javascript:history.go(-1) connaissant cette adresse, on peut alors facilement implementer un lien (go back button) pour revenir à la page précédente: <a href="javascript:history.go(-1)">Retour</a> ### Références Liens | Site ------------- | ------------- [How to Create a Website Back Button](htt

Trouver les clés d'un dictionnaire associées à une valeur donnée sous python

Cas 1: la valeur est associée à une seule clé. Dans ce cas on peut faire comme dans cet exemple ([source](https://stackoverflow.com/questions/8023306/get-key-by-value-in-dictionary)), on cherche ici la clé du dictionnaire associée à la valeur 1: >>> mydict = {'a':4,'b':2,'c':5,'d':3,'e':1,'f':5} >>> print(list(mydict.keys())[list(mydict.values()).index(1)]) e Cependant cette approche donne uniquement un résultat si la valeur est associée a plusieurs clé (exemple avec 5): >>>

Extraire une liste d'éléments à partir d'une liste d'indices sous python

Avec python, pour obtenir un élément d'une liste, on peut procéder comme suit: >>> l = ['a','b','c','d','e','f'] >>> l[2] 'c' Maintenant si on veut extraire plusieurs elements à partir d'une liste d'indices, on peut passer par [itemgetter](https://docs.python.org/2/library/operator.html#operator.itemgetter): >>> from operator import itemgetter >>> l = ['a','b','c','d','e','f'] >>> i = [2,3,5] >>> itemgetter(*i)(l) ('c', 'd', 'f') ### Références Liens | Sit

Trouver tous les indices d'un élément donné dans une liste sous python

Soit [4, 2, 3, 3, 1, 1] une liste sous python et on veut trouver tous les indices correspondant à la valeur 3. Cependant dans cette liste il existe plusieurs fois la valeur 3. Pour trouver tous les indices associés à cette valeur, on peut alors par exemple utiliser les "[List Comprehensions](http://www.secnetix.de/olli/Python/list_comprehensions.hawk)" avec [enumerate](http://book.pythontips.com/en/latest/enumerate.html), illustration: >>> mylist = [4, 2, 3, 3, 1, 1] >>> [idx for idx,e

Comment mettre en place un simple reCaptcha avec django

L'objectif d'un captcha est de discriminer un visiteur humain d'un robot en mettant en place un test, simple à réaliser pour un humain mais relativement difficile pour une machine. Il existe plusieurs types de captcha, ici on va voir un simple exemple basé sur [reCaptcha](https://www.google.com/recaptcha/intro/android.html) de google. Le guide en anglais [suivant](https://simpleisbetterthancomplex.com/tutorial/2017/02/21/how-to-add-recaptcha-to-django-site.html) est assez complet. La seule dif

Supprimer les éléments d'une liste au dessus d'une valeur donnée sous python

Soit l1 une liste de nombres entiers: >>> import random >>> l1 = random.sample(range(1, 100), 20) >>> print(l1) [21, 78, 35, 53, 45, 96, 65, 68, 12, 89, 66, 67, 42, 37, 17, 18, 22, 28, 80, 90] si on veut supprimer les éléments de la liste dont les valeurs sont plus grande que 50 on peut utiliser les "List Comprehensions" de python en ajoutant une condition, illustration: >>> l2 = [i for i in l1 if i < 50] >>> print(l2) [21, 35, 45, 12, 42, 37, 17, 18, 22, 28] ###

Comment stopper une commande lancée avec subprocess sous python ?

Pour stopper une commande lancée avec subprocess sous python on peut utiliser le module [time](https://docs.python.org/2/library/time.html), exemple stopper un script python après 5 secondes: import subprocess import time command = 'python my_script.py' process = subprocess.Popen(command, shell=True) time.sleep(5) process.terminate() autre exemple avec la commande unix find: import subprocess import time command = 'find ./foo -perm 777' process = subprocess.Popen(command, shell=

Lancer une commande sur une serveur distant avec ssh et pexpect de python

Exemple de code sur comment créer un tunnel ssh et lancer des commandes sur une serveur distant en utilisant [pexpect](https://github.com/pexpect/pexpect/blob/master/doc/overview.rst) de python: import pexpect host = "toto@machine_b.fr" child = pexpect.spawn('ssh toto@machine_b.fr') print('----- password ------') child.expect("password:") child.sendline('my_password') child.expect ('[#\$] ') print('----- command 1 ------') child.sendline('ls -l') child.expect ('[#\$] ') print(c

About


An article helps to save or share information. After creating an article it is possible to add multiple authors and manage the permissions

Create an article

Search


Use the following form to retrieve an article: