zoukankan      html  css  js  c++  java
  • python小例子

    1,统计系统剩余内存。

    2,根据已有的MAC地址,写成比上一个MAC地址大1的MAC地址。

    1,统计系统剩余内存(Linux为例)

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    with open('/proc/meminfo') as f:
        for line in f.xreadlines():
            if line.startswith('MemTotal'):
                total = int(line.split()[1])
                total/=1024.0
                continue
            if line.startswith('MemFree'):
                free = int(line.split()[1])
                free/=1024.0
                break
    print '机器总共内存%.2fM' %(total)
    print '剩余内存共%.2fM' %(free)
    print '剩余内存占用百分比为%.2f' %(free/total)
    

      

    2,根据已有的MAC地址,写成比上一个MAC地址大1的MAC地址。

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    
    macaddr = '00:16:3D:00:30:AD'
    #获取mac地址最后一段
    end = macaddr[-2:]
    #将16进制转换为10进制
    n = int(end,16)
    #在10进制数值的基础上加1
    n = n + 1
    #将新生产的10进制的数字转换为16进制,16进制以0x开头,所以要去掉。
    new_end = hex(n).strip('0x')
    #判断new_end的长度。因为如果最后一段是01这样小于10的16进制,则意味着我新生成的16进制去掉0x之后会只有1位数字,这样写入MAC地址中是少一位的。
    if len(new_end)<2:
    	new_end = '0' +  new_end 
    
    new_macaddr = macaddr[:-2] + new_end.upper()
    
    
    print new_macaddr
    

      

    上个问题主要要弄清楚16进制和10进制的转换就没问题。

    1,将16 进制转换为10进制
    
    int('a',16)
    
    int('0xa',16)  0x是16进制的前置标识
    
    
    
    2,将10进制转换为16进制
    
    hex(10)
    

      

  • 相关阅读:
    Http中GET和POST两种请求的区别
    JSON学习笔记
    分页
    python 函数,闭包
    LVS负载均衡中arp_ignore和arp_annonuce参数配置的含义
    return ;
    openssl 在php里
    重装drupal
    protected的意义
    和 和 notepad++
  • 原文地址:https://www.cnblogs.com/lin1/p/8146059.html
Copyright © 2011-2022 走看看