# Articles: 498

## How to convert Lambert 93 to longitude and latitude with python 3

To convert Lambert 93 coordinates to longitude and latitude with python, there is the package [pyproj](https://jswhit.github.io/pyproj/pyproj-pysrc.html). Example of code with Lambert 93 coordinates(x1,y1) = ( 882408.3,6543019.6) from pyproj import Proj, transform inProj = Proj(init='epsg:2154') outProj = Proj(init='epsg:4326') x1,y1 = 882408.3,6543019.6 x2,y2 = transform(inProj,outProj,x1,y1) print(x2,y2) returns here the longitude and latitude: 5.355651287573366

## Convertir des coordonnées Lambert 93 en longitude et latitude avec python 3

Pour convertir des coordonnées Lambert 93 en latitude et longitude avec python 3 il existe le package [pyproj](https://jswhit.github.io/pyproj/pyproj-pysrc.html). Exemple de code avec les coordonnées Lambert 93 (x1,y1) = ( 882408.3,6543019.6) from pyproj import Proj, transform inProj = Proj(init='epsg:2154') outProj = Proj(init='epsg:4326') x1,y1 = 882408.3,6543019.6 x2,y2 = transform(inProj,outProj,x1,y1) print(x2,y2) donne ici comme longitude et latitude: 5.3556

## 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] ###