Python什么方法可以获取计算机cpu及内存等信息,pythoncpu,cpu 的个数,内存条数


cpu 的个数,内存条数大小之类的?

import osimport commands#vcgencmd measure_temp#cat /sys/class/thermal/thermal_zone0/temp# Return CPU temperature as a character string                                      def getCPUtemperature():    res = os.popen('vcgencmd measure_temp').readline()    return(res.replace("temp=","").replace("'C\n",""))# Return GPU temperature as a character stringdef get_gpu_temp():    gpu_temp = commands.getoutput( '/opt/vc/bin/vcgencmd measure_temp' ).replace( 'temp=', '' ).replace( '\'C', '' )    return  float(gpu_temp)    # Uncomment the next line if you want the temp in Fahrenheit    # return float(1.8* gpu_temp)+32# Return RAM information (unit=kb) in a list                                       # Index 0: total RAM                                                               # Index 1: used RAM                                                                 # Index 2: free RAM                                                                 def getRAMinfo():    p = os.popen('free')    i = 0    while 1:        i = i + 1        line = p.readline()        if i==2:            return(line.split()[1:4])# Return % of CPU used by user as a character string                                def getCPUuse():    return(str(os.popen("top -n1 | awk '/Cpu\(s\):/ {print $2}'").readline().strip(\)))# Return information about disk space as a list (unit included)                     # Index 0: total disk space                                                         # Index 1: used disk space                                                         # Index 2: remaining disk space                                                     # Index 3: percentage of disk used                                                  def getDiskSpace():    p = os.popen("df -h /")    i = 0    while 1:        i = i +1        line = p.readline()        if i==2:            return(line.split()[1:5])# CPU informatiomCPU_temp = getCPUtemperature()CPU_usage = getCPUuse()# RAM information# Output is in kb, here I convert it in Mb for readabilityRAM_stats = getRAMinfo()RAM_total = round(int(RAM_stats[0]) / 1000,1)RAM_used = round(int(RAM_stats[1]) / 1000,1)RAM_free = round(int(RAM_stats[2]) / 1000,1)# Disk informationDISK_stats = getDiskSpace()DISK_total = DISK_stats[0]DISK_used = DISK_stats[1]DISK_perc = DISK_stats[3]if __name__ == '__main__':  print('')  print('CPU Temperature = '+CPU_temp) , "C"  print('CPU Use = '+CPU_usage)  print "GPU Temperature = ", str(get_gpu_temp()), "C"  print('')  print('RAM Total = '+str(RAM_total)+' MB')  print('RAM Used = '+str(RAM_used)+' MB')  print('RAM Free = '+str(RAM_free)+' MB')  print('')    print('DISK Total Space = '+str(DISK_total)+'B')  print('DISK Used Space = '+str(DISK_used)+'B')  print('DISK Used Percentage = '+str(DISK_perc))

执行效果

pi@raspberrypi ~ $ python /home/pi/sysdata/get.pyCPU Temperature = 34.5 CCPU Use = 1.5GPU Temperature =  34.5 CRAM Total = 448.0 MBRAM Used = 383.0 MBRAM Free = 64.0 MBDISK Total Space = 7.2GBDISK Used Space = 2.1GBDISK Used Percentage = 31%

https://github.com/giampaolo/psutil

编橙之家文章,

评论关闭