1. 程式人生 > >Python獲取本機所有網絡卡的MAC地址

Python獲取本機所有網絡卡的MAC地址

在拙作《Python可以這樣學》(清華大學出版社,2017.2)第297頁介紹了一種獲取本機網絡卡MAC地址的方法,不過程式碼顯得稍微有點囉嗦,並且只能獲得一塊網絡卡的MAC地址。本文對該內容稍加補充。

1、這樣更簡潔

>>> import uuid
>>> address = hex(uuid.getnode())[2:]
>>> '-'.join(address[i:i+2] for in range(0, len(address), 2))
'f0-03-8c-09-8c-34'

2、獲取多網絡卡MAC地址

首先使用pip安裝Python擴充套件庫psutil,然後執行下面的程式碼即可。

from psutil import net_if_addrs

for k, v in net_if_addrs().items():
    for item in v:
        address = item[1]
        if '-' in address and len(address)==17:
            print(address)