1. 程式人生 > >python - 檔案練習生成100個MAC地址寫入檔案

python - 檔案練習生成100個MAC地址寫入檔案

需求:
生成100個MAC地址並寫入檔案中,MAC地址前6位(16進位制)為01-AF-3B

解題思路:
要求生成這樣格式的mac地址:01-AF-3B-xx-xx-xx

首先生成-xx格式,16進位制組成的數,注意MAC英文字母為大寫。
拼接成為:01-AF-3B-xx
再生成:-xx
再次拼接:01-AF-3B-xx-xx依次類推
-xx
01-AF-3B-xx-xx-xx

import string
import random

# 隨機生成一個MAC地址的函式
def creat_mac():
    MAC= '01-AF-3B'
    # 生成16進位制的數
    hex_num = string.hexdigits
    # 0123456789abcdefABCDEF
    for i in range(3):
        # 從16進位制字串中隨機選出2個數來(返回值為列表)['a', 'd']
        n = random.sample(hex_num,2)
        # 拼接列表中的內容,將小寫字母轉換為大寫-AD
        sn = '-' + ''.join(n).upper()
        MAC += sn

    return MAC

# 主函式,隨機生成100個MAC地址
def main():
    # 以寫的方式開啟檔案
    with open('mac.txt','w') as f:
        for i in range(100):
            mac= creat_mac()
            print(mac)
            # 每生成一個MAC地址,存入檔案(注意換行)
            f.write(mac+'\n')

main()

生成MAC.txt檔案
在這裡插入圖片描述
螢幕同時顯示輸出:
在這裡插入圖片描述