- À propos de platform.processor() en Python
- Obtenir les informations sur le processeur
- Comprendre la valeur retournée par platform.processor()
- Utiliser platform.processor() sous Windows, Linux et macOS
- Associer le processeur à l'architecture de la machine
- Comparer platform.processor() et platform.machine()
- Tester les informations du processeur dans un programme
- Créer une fonction pour obtenir les informations matérielles
- Connaître les limites de platform.processor()
- À retenir !
1. À propos de platform.processor() en Python
Le module platform de Python contient plusieurs fonctions permettant d'obtenir des informations sur le système d'exploitation et la machine sur lesquels un programme est exécuté. La fonction platform.processor() permet d'obtenir une chaîne décrivant le processeur lorsque cette information est disponible sur la plateforme utilisée.
Cette fonction peut être utile dans un programme de diagnostic système, un script d'administration ou une application souhaitant afficher certaines caractéristiques de l'environnement matériel. La nature et le niveau de détail des informations retournées dépendent cependant du système d'exploitation.
Le programme suivant importe le module platform puis affiche directement le résultat de platform.processor().
1 2 3 | import platform print(platform.processor()) |
Sortie possible :
1 | Intel64 Family 6 Model 154 Stepping 3, GenuineIntel |
La valeur affichée peut être très différente sur une autre machine. Dans certains environnements, platform.processor() peut également retourner une chaîne vide lorsque l'information n'est pas disponible.
2. Obtenir les informations sur le processeur
La fonction platform.processor() ne nécessite aucun argument. Après avoir importé le module platform, il suffit de l'appeler pour demander l'information concernant le processeur fournie par la plateforme.
Le programme suivant ajoute un texte explicatif afin de rendre le résultat plus lisible.
1 2 3 | import platform print("Processeur :", platform.processor()) |
Sortie possible :
1 | Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel |
Nous pouvons également importer directement la fonction processor() depuis le module platform.
1 2 3 | from platform import processor print(processor()) |
Sortie possible :
1 | Intel64 Family 6 Model 154 Stepping 3, GenuineIntel |
Les deux méthodes produisent le même type de résultat. L'écriture platform.processor() permet cependant d'identifier immédiatement le module auquel appartient la fonction.
3. Comprendre la valeur retournée par platform.processor()
La fonction platform.processor() retourne une chaîne de caractères. Le contenu de cette chaîne n'est pas standardisé de la même manière sur toutes les plateformes : il peut contenir une description du processeur, une désignation liée à son architecture ou être vide lorsque l'information ne peut pas être déterminée.
Le programme suivant stocke le résultat dans une variable puis affiche sa valeur et son type.
1 2 3 4 5 6 | import platform processeur = platform.processor() print("Processeur :", processeur) print("Type :", type(processeur)) |
Sortie possible :
1 2 | Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel Type : <class 'str'> |
Puisque le résultat est une chaîne, nous pouvons appliquer les méthodes classiques du type str. Par exemple, lower() permet de convertir le résultat en minuscules.
1 2 3 4 | import platform processeur = platform.processor() print(processeur.lower()) |
Sortie possible :
1 | intel64 family 6 model 154 stepping 3, genuineintel |
Cette transformation peut faciliter certaines recherches ou comparaisons, mais il faut garder à l'esprit que le contenu exact de la chaîne dépend de la plateforme.
4. Utiliser platform.processor() sous Windows, Linux et macOS
Le résultat de platform.processor() peut varier fortement selon le système d'exploitation. Il ne faut donc pas construire un programme en supposant que la fonction retournera toujours le nom commercial complet du processeur.
Exemple sous Windows
Sous Windows, la fonction peut retourner une chaîne contenant différentes informations techniques concernant le processeur.
1 2 3 4 | import platform print("Système :", platform.system()) print("Processeur :", platform.processor()) |
Sortie possible sous Windows :
1 2 | Système : Windows Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel |
Exemple sous Linux
Sous Linux, le résultat dépend de l'environnement et des informations disponibles. Sur certaines configurations, platform.processor() peut notamment retourner une chaîne vide.
1 2 3 4 | import platform print("Système :", platform.system()) print("Processeur :", platform.processor()) |
Sortie possible sous Linux :
1 2 | Système : Linux Processeur : x86_64 |
Exemple sous macOS
Sous macOS, la valeur retournée dépend également de la machine, de l'architecture et de la version de Python utilisée.
1 2 3 4 | import platform print("Système :", platform.system()) print("Processeur :", platform.processor()) |
Sortie possible sous macOS :
1 2 | Système : Darwin Processeur : arm |
Ces exemples montrent qu'il est préférable d'utiliser platform.processor() comme une source d'information fournie par la plateforme et non comme une méthode garantissant un format identique sur tous les ordinateurs.
5. Associer le processeur à l'architecture de la machine
La fonction platform.processor() devient plus informative lorsqu'elle est associée à platform.machine(). Cette dernière retourne le type de machine ou l'architecture rapportée par le système, avec des valeurs possibles telles que AMD64, x86_64, ARM64 ou aarch64.
Le programme suivant affiche simultanément le processeur et l'architecture de la machine.
1 2 3 4 | import platform print("Processeur :", platform.processor()) print("Machine :", platform.machine()) |
Sortie possible :
1 2 | Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel Machine : AMD64 |
Nous pouvons compléter ces informations avec platform.architecture() afin d'obtenir également une indication telle que 32bit ou 64bit concernant l'exécutable examiné.
1 2 3 4 5 | import platform print("Processeur :", platform.processor()) print("Machine :", platform.machine()) print("Architecture Python :", platform.architecture()[0]) |
Sortie possible :
1 2 3 | Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel Machine : AMD64 Architecture Python : 64bit |
Ces fonctions fournissent des informations complémentaires et permettent de construire une description plus complète de l'environnement matériel et de l'exécutable Python.
6. Comparer platform.processor() et platform.machine()
Les fonctions platform.processor() et platform.machine() peuvent parfois retourner des chaînes proches, mais elles n'ont pas exactement le même rôle. platform.processor() cherche à fournir une information sur le processeur, tandis que platform.machine() indique le type de machine rapporté par le système.
Le programme suivant permet de comparer directement les deux valeurs sur l'ordinateur utilisé.
1 2 3 4 5 6 7 | import platform processeur = platform.processor() machine = platform.machine() print("Processeur :", processeur) print("Machine :", machine) |
Sortie possible :
1 2 | Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel Machine : AMD64 |
Dans cet exemple, la première valeur fournit une description technique du processeur alors que la seconde indique une architecture de la famille x86-64.
Nous pouvons également afficher le système afin de replacer ces informations dans leur contexte.
1 2 3 4 5 | import platform print("Système :", platform.system()) print("Processeur :", platform.processor()) print("Machine :", platform.machine()) |
Sortie possible :
1 2 3 | Système : Windows Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel Machine : AMD64 |
Pour réaliser un diagnostic, il est donc généralement préférable de conserver ces informations séparées plutôt que de considérer processor() et machine() comme équivalentes.
7. Tester les informations du processeur dans un programme
Le résultat de platform.processor() étant une chaîne, nous pouvons rechercher la présence d'un texte particulier avec l'opérateur in. Cette technique doit toutefois être utilisée avec prudence puisque le format retourné n'est pas identique sur toutes les plateformes.
Le programme suivant recherche les termes Intel et AMD dans la chaîne retournée.
1 2 3 4 5 6 7 8 9 10 | import platform processeur = platform.processor().lower() if "intel" in processeur: print("Une information Intel a été détectée.") elif "amd" in processeur: print("Une information AMD a été détectée.") else: print("Processeur non identifié avec ce test.") |
Sortie possible :
1 | Une information Intel a été détectée. |
Ce test ne constitue pas une méthode universelle d'identification du fabricant du processeur. Il vérifie uniquement si certains mots sont présents dans la chaîne fournie par platform.processor().
Une utilisation plus robuste consiste à vérifier d'abord si la fonction a effectivement retourné une valeur.
1 2 3 4 5 6 7 8 | import platform processeur = platform.processor() if processeur: print("Information processeur :", processeur) else: print("Information processeur indisponible.") |
Sortie possible :
1 | Information processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel |
Cette approche permet de gérer correctement les environnements dans lesquels platform.processor() retourne une chaîne vide.
8. Créer une fonction pour obtenir les informations matérielles
Lorsque plusieurs informations concernant la machine sont nécessaires, nous pouvons créer une fonction Python qui regroupe les différents appels au module platform. Cette organisation rend le programme plus lisible et évite de répéter les mêmes instructions.
La fonction suivante retourne l'information sur le processeur et fournit un texte par défaut lorsque celle-ci est indisponible.
1 2 3 4 5 6 | import platform def obtenir_processeur(): return platform.processor() or "Processeur non identifié" print(obtenir_processeur()) |
Sortie possible :
1 | Intel64 Family 6 Model 154 Stepping 3, GenuineIntel |
Nous pouvons créer une fonction plus complète qui rassemble plusieurs caractéristiques dans un dictionnaire.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | import platform def informations_materielles(): return { "processeur": platform.processor() or "Non disponible", "machine": platform.machine() or "Non disponible", "architecture": platform.architecture()[0], "systeme": platform.system() } infos = informations_materielles() for cle, valeur in infos.items(): print(f"{cle} : {valeur}") |
Sortie possible :
1 2 3 4 | processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel machine : AMD64 architecture : 64bit systeme : Windows |
Le dictionnaire permet ensuite d'accéder facilement à chaque information, par exemple avec infos["processeur"] pour récupérer uniquement la description du processeur.
9. Connaître les limites de platform.processor()
La fonction platform.processor() est pratique pour obtenir rapidement une information sur le processeur, mais elle possède une limite importante : son résultat dépend fortement de la plateforme et peut être vide. Elle ne doit donc pas être considérée comme une fonction universelle fournissant systématiquement le modèle commercial exact du processeur.
Dans une machine virtuelle, un conteneur, un environnement émulé ou certaines configurations particulières, les informations visibles par Python peuvent également être différentes des caractéristiques physiques réelles de l'ordinateur.
Le programme suivant prévoit explicitement l'absence d'information et affiche également l'architecture de la machine comme donnée complémentaire.
1 2 3 4 5 6 7 8 9 10 11 | import platform processeur = platform.processor() machine = platform.machine() if processeur: print("Processeur :", processeur) else: print("Processeur : information indisponible") print("Machine :", machine) |
Sortie possible lorsque le processeur est disponible :
1 2 | Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel Machine : AMD64 |
Si platform.processor() retourne une chaîne vide, le programme reste fonctionnel et fournit au moins l'information obtenue avec platform.machine().
Pour établir une fiche système plus complète, nous pouvons donc combiner plusieurs fonctions plutôt que de dépendre uniquement de platform.processor().
1 2 3 4 5 6 7 | import platform print("Nom :", platform.node()) print("Système :", platform.system()) print("Release :", platform.release()) print("Machine :", platform.machine()) print("Processeur :", platform.processor() or "Non disponible") |
Sortie possible :
1 2 3 4 5 | Nom : PC-YOUNES Système : Windows Release : 11 Machine : AMD64 Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel |
Cette méthode fournit davantage de contexte et facilite l'interprétation des informations retournées par le système.
10. À retenir !
La fonction platform.processor() permet d'obtenir une information sur le processeur fournie par le système sur lequel Python est exécuté. Elle appartient au module platform de la bibliothèque standard et ne nécessite donc l'installation d'aucun package supplémentaire.
- platform.processor() ne nécessite aucun argument.
- La fonction retourne une chaîne de caractères str.
- Le contenu retourné dépend fortement du système d'exploitation et de la plateforme.
- La chaîne peut contenir une description technique du processeur.
- Dans certains environnements, platform.processor() peut retourner une chaîne vide.
- La fonction ne garantit pas de fournir le nom commercial exact du processeur.
- platform.machine() fournit une information complémentaire concernant le type de machine ou l'architecture rapportée par le système.
- platform.architecture() peut notamment indiquer si l'exécutable examiné est identifié comme 32 ou 64 bits.
- platform.system() permet d'identifier le système d'exploitation auquel correspondent les informations obtenues.
- Pour réaliser un diagnostic complet, il est préférable de combiner plusieurs fonctions du module platform.
Le programme suivant rassemble les principales informations étudiées afin de créer une fiche simple concernant le processeur et l'environnement matériel de l'ordinateur.
1 2 3 4 5 6 7 8 9 10 11 12 | import platform processeur = platform.processor() or "Non disponible" bits, format_executable = platform.architecture() print("Nom de la machine :", platform.node()) print("Système :", platform.system()) print("Release :", platform.release()) print("Machine :", platform.machine()) print("Processeur :", processeur) print("Architecture Python :", bits) print("Format :", format_executable) |
Sortie possible :
1 2 3 4 5 6 7 | Nom de la machine : PC-YOUNES Système : Windows Release : 11 Machine : AMD64 Processeur : Intel64 Family 6 Model 154 Stepping 3, GenuineIntel Architecture Python : 64bit Format : WindowsPE |
Auteur : Younes Derfoufi
Lieu de travail : CRMEF OUJDA
Site Web : www.tresfacile.net
Chaine YouTube : https://www.youtube.com/user/InformatiquesFacile
Me contacter : https://www.tresfacile.net/me-contacter/


