GNU/Linux >> Tutoriels Linux >  >> Linux

Obtenir la mémoire physique totale en Python

votre meilleur pari pour une solution multiplateforme est d'utiliser le package psutil (disponible sur PyPI).

import psutil
    
psutil.virtual_memory().total  # total physical memory in Bytes

Documentation pour virtual_memory est ici.


Utilisation os.sysconf sur Linux :

import os
mem_bytes = os.sysconf('SC_PAGE_SIZE') * os.sysconf('SC_PHYS_PAGES')  # e.g. 4015976448
mem_gib = mem_bytes/(1024.**3)  # e.g. 3.74

Remarque :

  • SC_PAGE_SIZE est souvent 4096.
  • SC_PAGESIZE et SC_PAGE_SIZE sont égaux.
  • Pour plus d'informations, voir man sysconf .
  • Pour MacOS , selon les rapports des utilisateurs, cela fonctionne avec Python 3.7 mais pas avec Python 3.8.

Utiliser /proc/meminfo sous Linux :

meminfo = dict((i.split()[0].rstrip(':'),int(i.split()[1])) for i in open('/proc/meminfo').readlines())
mem_kib = meminfo['MemTotal']  # e.g. 3921852

Les expressions régulières fonctionnent bien pour ce genre de choses et peuvent aider avec des différences mineures entre les distributions.

import re
with open('/proc/meminfo') as f:
    meminfo = f.read()
matched = re.search(r'^MemTotal:\s+(\d+)', meminfo)
if matched: 
    mem_total_kB = int(matched.groups()[0])

Linux
  1. Comment obtenir la largeur de la fenêtre de la console Linux en Python

  2. Obtenez le temps de création de fichier avec Python sur Linux

  3. Comment obtenir l'utilisation totale du processeur sous Linux en utilisant C++

  4. Obtenir le titre de la fenêtre actuelle avec Python et Xorg

  5. Comment obtenir l'heure de la date formatée en python

obtenir l'identifiant du groupe par nom de groupe (Python, Unix)

Obtenez des deltas de souris en utilisant Python ! (sous Linux)

Python FTP obtient le fichier le plus récent par date

Comment obtenir le nombre de disques physiques sous Linux ?

Comment obtenir le pourcentage d'utilisation de la mémoire avec vmstat ?

Comment obtenir la taille physique d'un fichier sous Linux ?