La blockchain : une technologie d’avenir

Technologie de stockage et de transmission d’informations reposant sur une base de données décentralisée, la blockchain suscite beaucoup d’espoirs en matière de sécurisation des transactions sur la Toile. Pour y voir plus clair, les présentateurs de “Xenius” achètent des bitcoins (une cryptomonnaie) et découvrent de nouvelles applications prometteuses.

Source : Xenius – La blockchain : une technologie d’avenir | ARTE

Comment visualiser une structure de donnée de liste ?

En Python, List (souvent appelée tableau dans d’autres langages de programmation) est le type de données le plus flexible. C’est une séquence (séquence) d’éléments (élément), qui vous permet de supprimer ou d’ajouter les éléments à la liste et vous permet de découper (Slice) les éléments.
 
Pour écrire une liste, vous devez placer les éléments dans une paire de crochets [] et les séparer par la virgule. Les éléments de la liste sont indexés (index) de gauche à droite et démarrés à partir de l’index 0.
 
 

Dans cet article, je vous présente un outil simple de visualisation de structures de données en Python le module lolviz

Ce module essaie de rechercher et de formater joliment les structures de données communes comme les listes.  Ce paquet est principalement destiné à être utilisé dans l’enseignement et les présentations avec les carnets Jupyter, mais pourrait également être utilisé pour le débogage des structures de données.

Il semble important de décrire et de visualiser aux étudiants comment les données sont disposées en mémoire. Il existe de très bons outils de visualisation des structures de données, mais celui-ci peut-être utilisé via Python dans les carnets Jupyter.

L’apparence et l’idée ont été inspirées par l’impressionnant Python tutor.

  • Exemple n°1 : liste simple en Python

  • Exemple n°2 : liste de liste (tableau) en Python

Liste de liste pour représenter le plateau du jeu le morpion

En Python, le module lolviz est très pratique lorsque l’on veut découper ou trancher des chaines de caractères (slice).

Pour aller plus loin

Comment visualiser un objet en Python ?

La programmation orientée objet (POO) est un concept de programmation très puissant qui permet de structurer ses programmes d’une nouvelle manière. En POO, on définit un « objet » qui peut contenir des « attributs » ainsi que des « méthodes » qui agissent sur lui-même. Par exemple, on définit un objet « citron » qui contient les attributs « saveur » et « couleur », ainsi qu’une méthode « presser » permettant d’en extraire le jus. En Python, on utilise une « classe » pour construire un objet.

 

Dans cet article, je vous présente un outil simple de visualisation de structures de données en Python le module lolviz

Ce module essaie de rechercher et de formater joliment les structures de données communes comme les objets.  Ce paquet est principalement destiné à être utilisé dans l’enseignement et les présentations avec les carnets Jupyter, mais pourrait également être utilisé pour le débogage des structures de données.

Il semble important de décrire et de visualiser aux étudiants comment les données sont disposées en mémoire. Il existe de très bons outils de visualisation des structures de données, mais celui-ci peut-être utilisé via Python dans les carnets Jupyter.

L’apparence et l’idée ont été inspirées par l’impressionnant Python tutor.

Dans notre exemple, on définit une classe Personne

On crée ensuite l’objet luc.

Pour terminer, on modifie la taille de luc grâce à la méthode grandir.

On voit ici que l’attribut taille a changé dans l’objet luc.

En Python, le module lolviz est très pratique lorsque l’on veut visualiser les objets dans des listes chainées, des arbres,  des graphes, etc…

Comment visualiser une structure de donnée de chaine de caractère ?

Le type de données de chaîne Python est une séquence composée d’un ou de plusieurs caractères individuels et constituée de lettres, de chiffres, de caractères d’espacement ou de symboles. Puisqu’une chaîne est une séquence, vous pouvez y accéder de la même manière que pour les autres types de données basés sur des séquences, via l’indexation et le découpage en tranches.

À chaque caractère d’une chaîne Python correspond un numéro d’index, nous pouvons accéder aux chaînes et les manipuler de la même façon que nous le ferions avec d’autres types de données séquentielles, par exemple les listes.

Dans cet article, je vous présente un outil simple de visualisation de structures de données en Python le module lolviz

Ce module essaie de rechercher et de formater joliment les structures de données communes comme les chaines de caractères.  Ce paquet est principalement destiné à être utilisé dans l’enseignement et les présentations avec les carnets Jupyter, mais pourrait également être utilisé pour le débogage des structures de données.

Il semble important de décrire et de visualiser aux étudiants comment les données sont disposées en mémoire. Il existe de très bons outils de visualisation des structures de données, mais celui-ci peut-être utilisé via Python dans les carnets Jupyter.

L’apparence et l’idée ont été inspirées par l’impressionnant Python tutor.

En Python, le module lolviz est très pratique lorsque l’on veut découper ou trancher des chaines de caractères (slice).

Comment effacer des éléments dans une liste chainée en Python ?

Comme nous l’avons vu dans un autre article pour l’insertion, il peut y avoir plusieurs façons de supprimer des éléments d’une liste doublement liée. Dans cette section, nous allons passer en revue certaines d’entre elles.

Suppression d’éléments au début de la liste

La façon la plus simple de supprimer un élément d’une liste doublement liée est de le faire dès le début. Pour ce faire, il suffit de fixer la valeur du nœud de départ au nœud suivant, puis de fixer la référence précédente du nœud de départ à Aucune. Mais avant cela, nous devons effectuer deux vérifications. Tout d’abord, nous devons voir si la liste est vide. Ensuite, nous devons voir si la liste ne contient qu’un seul élément ou non. Si la liste ne contient qu’un seul élément, nous pouvons simplement mettre le nœud de départ sur None (Aucun). Le script suivant peut être utilisé pour supprimer des éléments du début de la liste doublement liée.

Suppression d’éléments à la fin de la liste

Pour supprimer l’élément de la fin, nous vérifions à nouveau si la liste est vide ou si la liste contient un seul élément. Si la liste ne contient qu’un seul élément, il suffit de mettre le nœud de départ sur Aucun. Si la liste contient plus d’un élément, nous répétons l’opération jusqu’à ce que le dernier nœud soit atteint. Une fois que nous avons atteint le dernier nœud, nous fixons la référence suivante du nœud précédant le dernier nœud, à None (Aucun), ce qui supprime effectivement le dernier nœud. Le script suivant peut être utilisé pour supprimer l’élément de la fin.

Suppression d’éléments par valeur

La suppression d’un élément par valeur est la plus délicate de toutes les fonctions de suppression dans les listes doublement liées, car plusieurs cas doivent être traités afin de supprimer un élément par valeur. Voyons d’abord à quoi ressemble la fonction, puis nous verrons l’explication de l’élément par valeur.

Pourquoi tracer l’exécution d’un programme ?

Tracer l’exécution d’un programme est une technique utilisée pour tester un algorithme et prédire, étape par étape, comment l’ordinateur va exécuter l’algorithme. Elle peut être utilisée pour comprendre ou prédire ce que fait un algorithme et pour identifier les erreurs logiques potentielles (lorsque le programme se compile, mais ne produit pas le résultat attendu).

Lorsqu’un programme ne fonctionne pas correctement, on doit être capable de comprendre les étapes de son exécution pour trouver le problème. On peut bien sûr utiliser un débogueur symbolique, mais il est important de pouvoir le faire également « à la main ». Cela permet par exemple de faire la trace de l’exécution d’un programme écrit sur du papier ou d’analyser une petite portion de code d’un grand programme. Cela vous permet également de bien comprendre le fonctionnement des structures de contrôle et de l’affectation.

Les résultats de la simulation sont généralement représentés sous forme d’un tableau qui constitue la trace d’exécution en prenant une “photo” de toutes les variables de cet algorithme aux instants.

La trace d’exécution est un “compte rendu” de l’exécution de l’algorithme.


Un tableau de suivi typique est illustré ici.

Exemple n°1 :

  • Le programme

  • La trace d’exécution sous forme de tableau

Pour aller plus loin

Conversion Analogique Numérique – simulation, animation interactive

Numériser un signal analogique consiste à prélever quelques échantillons et à les coder en binaire. La suite de codes obtenus est regroupée dans un fichier numérique. L’intérêt de la numérisation réside dans les capacités de traitement informatique qu’offre un tel format de fichier. Afin d’obtenir une numérisation fidèle au signal analogique d’origine, il faut gagner en précision. Il suffit pour cela d’augmenter la fréquence d’échantillonnage et de diminuer le pas de quantification.

Cliquer sur le graphe et/ou les données binaires du fichier de sortie pour faire les correspondances.

Source : Conversion Analogique Numérique – simulation, animation interactive – eduMedia

Pour aller plus loin

Vivre avec des objets connectés | Internet de tout et n’importe quoi (2/2)

Des sonnettes à la police de Los Angeles, des bracelets intelligents à la voiture autonome, les objets connectés sont partout. Mais que se passe-t-il quand on met de l’internet dans tout ? Le réalisateur Brett Gaylor en a fait l’expérience et nous fait découvrir la contrepartie cachée dans chaque objet connecté.

Misant sur l’humour et un rythme enlevé, Internet de tout et n’importe quoi éclaire les vastes ramifications du Net d’aujourd’hui. S’il se fait l’écho du « techlash », il ne tombe pas pour autant dans la nostalgie d’une époque plus simple ou dans le pessimisme catastrophiste. A sa manière, Internet de tout et n’importe quoi incarne la première devise du Web : « Let’s share what we know. ».

SNT – Cahier de Sciences numériques et Technologie 2de

SNT – Cahier de Sciences numériques et Technologie 2de – cahier élève

Un cahier clés en main simple et accessible pour prendre goût aux sciences numériques

  • + de 50 activités pour appréhender les notions et travailler en classe entière ou en autonomie
  • Des pages bilan succinctes et claires couvrant l’intégralité du programme
  • Des enrichissements numériques pour la mise en oeuvre d’applications directes et l’évaluation des compétences numériques (certification PIX)
  • Dans chaque chapitre, des activités clés en main sur la plateforme

VIDEO. Traquer les cybercriminels est son passe-temps

Parallèlement au coronavirus, d’autres virus se sont répandus cette année à une vitesse exponentielle. Ceux-là sont informatiques, ils menacent les sites d’information, les mairies, les hôpitaux… On en repère 500 000 nouveaux par jour. Pour en savoir plus sur les cyberpirates et leurs modes opératoires, “Complément d’enquête” a approché un maître en infiltration dans une zone de non-droit, le darknet.

Source : VIDEO. Traquer les cybercriminels est son passe-temps : “Complément d’enquête” a approché un justicier de l’ombre

Show Buttons
Hide Buttons
Translate »