Python實現(xiàn)隨機(jī)生成手機(jī)號及正則驗證手機(jī)號的方法
本文實例講述了Python實現(xiàn)隨機(jī)生成手機(jī)號及正則驗證手機(jī)號的方法。分享給大家供大家參考,具體如下:
依據(jù)
根據(jù)2017年10月份最新的手機(jī)號正則進(jìn)行編碼, 正則如下:
(13\d|14[579]|15[^4\D]|17[^49\D]|18\d)\d{8}
代碼
# -*- coding: utf-8 -*-
import random
def create_phone():
# 第二位數(shù)字
second = [3, 4, 5, 7, 8][random.randint(0, 4)]
# 第三位數(shù)字
third = {
3: random.randint(0, 9),
4: [5, 7, 9][random.randint(0, 2)],
5: [i for i in range(10) if i != 4][random.randint(0, 8)],
7: [i for i in range(10) if i not in [4, 9]][random.randint(0, 7)],
8: random.randint(0, 9),
}[second]
# 最后八位數(shù)字
suffix = random.randint(9999999,100000000)
# 拼接手機(jī)號
return "1{}{}{}".format(second, third, suffix)
# 生成手機(jī)號
phone = create_phone()
print(phone)
運(yùn)行結(jié)果
13937342780
15835720604
14589505530
...
PS:這里再為打擊推薦一款功能相似的在線工具供大家參考:
在線隨機(jī)生成個人信息數(shù)據(jù)工具:
http://tools.jb51.net/aideddesign/rnd_userinfo
驗證 (使用正則驗證)
# -*- coding: utf-8 -*-
import random
import re
def create_phone():
# 第二位數(shù)字
second = [3, 4, 5, 7, 8][random.randint(0, 4)]
# 第三位數(shù)字
third = {
3: random.randint(0, 9),
4: [5, 7, 9][random.randint(0, 2)],
5: [i for i in range(10) if i != 4][random.randint(0, 8)],
7: [i for i in range(10) if i not in [4, 9]][random.randint(0, 7)],
8: random.randint(0, 9),
}[second]
# 最后八位數(shù)字
suffix = random.randint(9999999,100000000)
# 拼接手機(jī)號
return "1{}{}{}".format(second, third, suffix)
# 生成手機(jī)號
phone = create_phone()
print(phone)
# 正則
reg = re.compile("(13\d|14[579]|15[^4\D]|17[^49\D]|18\d)\d{8}")
print("Test passed!" if reg.match(phone) else "Test failed!")
驗證結(jié)果
18662182464
Test passed!15896505277
Test passed!14952715286
Test passed!...
PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:
JavaScript正則表達(dá)式在線測試工具:
http://tools.jb51.net/regex/javascript
正則表達(dá)式在線生成工具:
http://tools.jb51.net/regex/create_reg
更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python入門與進(jìn)階經(jīng)典教程》及《Python正則表達(dá)式用法總結(jié)》
希望本文所述對大家Python程序設(shè)計有所幫助。
- python手機(jī)號前7位歸屬地爬蟲代碼實例
- Python實現(xiàn)的手機(jī)號歸屬地相關(guān)信息查詢功能示例
- Python抓取手機(jī)號歸屬地信息示例代碼
- Python手機(jī)號碼歸屬地查詢代碼
- Python+Selenium隨機(jī)生成手機(jī)驗證碼并檢查頁面上是否彈出重復(fù)手機(jī)號碼提示框
- Python實現(xiàn)隨機(jī)生成有效手機(jī)號碼及身份證功能示例
- Python根據(jù)區(qū)號生成手機(jī)號碼的方法
- Python實現(xiàn)豎排打印傳單手機(jī)號碼易撕條
- Python批量獲取并保存手機(jī)號歸屬地和運(yùn)營商的示例
相關(guān)文章
Python OpenCV學(xué)習(xí)之圖像濾波詳解
圖像濾波的作用簡單來說就是將一副圖像通過濾波器得到另一幅圖像;明確一個概念,濾波器又被稱為卷積核,濾波的過程又被稱為卷積;實際上深度學(xué)習(xí)就是訓(xùn)練許多適應(yīng)任務(wù)的濾波器,本質(zhì)上就是得到最佳的參數(shù)。下面來跟隨小編一起深入了解一下圖像濾波吧2022-01-01
詳解如何使用Python在PDF文檔中創(chuàng)建動作
PDF格式因其跨平臺兼容性和豐富的功能集而成為許多行業(yè)中的首選文件格式,其中,PDF中的動作(Action) 功能尤為突出,本文將介紹如何使用Python在PDF文檔中創(chuàng)建動作,需要的朋友可以參考下2024-09-09
python安裝mysql的依賴包mysql-python操作
這篇文章主要介紹了python安裝mysql的依賴包mysql-python操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01

