arguments & variable
MY_CONSTANT = 2 # variable globale en majuscule
# it can be aceesed and modified by all of function
# pas besoin de passer le aux fonctions
def function_name(X, Y): #X, Y postional arguments
Z = X * Y
A = X + Y # Z, A variable local
return Z, A # revoyer les résultats # equal to return [Z, A]
# return (Z, A) to create a tuple
x = 2
y = 1 # variable global # il faut passer aux fonctions
function_name(X = x, Y = y) # X, Y keyword arguments
# equal to function_name(x, y) #passage d'argument
|
In Python, variables declared outside a function are global by default, while variables declared inside a function are local by default.
class
class MyFunctions:
def function1(self):
...
def function2(self):
...
my_functions = MyFunctions()
my_functions.function1()
my_functions.function2()
|
__main__
# file My_module.py
def My_funtion():
...
print('Hello from my_module.py')
if __name__ == '__main__':
print('Hello from main method of my_module.py')
# run My_model.py
Hello from my_module.py
#print directly the message
# other file in which we import our module
import My_module.py as m
m.My_function()
#it don't print the message but functions in module can be accessed
|
|
|
Examples
#Python ne permet pas la modification d'une variable globale dans une fonction.
>>> def ma_fonction():
... x = x + 1
...
>>> x = 1
>>> ma_fonction()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 2, in fct
UnboundLocalError: local variable 'x' referenced before assignment
soit déclarer la variable est globale
>>> def ma_fonction():
... global x
... x = x + 1
#Soyez extrêmement attentifs avec les types modifiables (tels que les listes)
#car vous pouvez les changer au sein d'une fonction :
>>> def ma_fonction():
... liste[1] = -127
...
>>> liste = [1,2,3]
>>> ma_fonction()
>>> liste
[1, -127, 3]
|
Conseils : l'utilisation de variables globales est à bannir définitivement de votre pratique de la programmation. conseillons de privilégier la première version : liste_notes = ajoute_un(liste_notes) & return liste_notes à la fin de la fonction
règles
L'acronyme DRY signifie Don't Repeat Yourself. Les fonctions permettent de satisfaire ce principe en évitant la duplication de code.
Règle LGI : Lorsque Python rencontre une variable, il va traiter la résolution de son nom avec des priorités particulières. D'abord il va regarder si la variable est locale, puis si elle n'existe pas localement, il vérifiera si elle est globale et enfin si elle n'est pas globale, il testera si elle est interne (par exemple la fonction len() est considérée comme une fonction interne à Python, elle existe à chaque fois que vous lancez Python). |
common file format for bioinfo
FASTA |
protein sequence |
GenBank |
file format for storing DNA or protein sequences |
PDB |
protein structure |
CSV, TSV |
table |
XTC ... |
file for molecular dynamic |
mol2 |
topology file |
|
Created By
Metadata
Comments
No comments yet. Add yours below!
Add a Comment
Related Cheat Sheets
More Cheat Sheets by Theo666