最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python隨機(jī)生成帶特殊字符的密碼

 更新時間:2016年03月02日 11:27:10   作者:mindg  
這篇文章主要介紹了Python隨機(jī)生成帶特殊字符的密碼的相關(guān)資料,需要的朋友可以參考下

在日常運(yùn)維中,如果涉及到用戶管理,就一定會用到給用戶設(shè)置密碼的工作,其實(shí)吧,平時腦子里覺得設(shè)置個密碼沒什么,但要真讓你隨手敲一個12位帶特殊字符的隨機(jī)密碼,也是很痛苦的事,如果讓你敲10個這樣的隨機(jī)密碼,我估計要人要瘋了,所以這事不適合人干,但機(jī)器最做這個最拿手,今天我們就來學(xué)習(xí)一段python腳本,可以直接生成自己需要的密碼,且密碼長度,數(shù)字,字符個數(shù)隨意你指定,廢話不多說了,我們直接看代碼:

#!/usr/bin/env python
import string
from itertools import chain
from random import choice, sample
def mkpasswd(length=12, digits=4, upper=3, lower=3):
lowercase = string.lowercase
uppercase = string.uppercase
salt = '!@#$%^&*()><?'
password = list(
chain(
(choice(uppercase) for _ in range(upper)),
(choice(lowercase) for _ in range(lower)),
(choice(string.digits) for _ in range(digits)),
(choice(salt) for _ in range((length - digits - upper - lower)))
)
)
return "".join(sample(password, len(password)))
if __name__ == '__main__':
print mkpasswd()
#!/usr/bin/env python
import string
from itertools import chain
from random import choice, sample
def mkpasswd(length=12, digits=4, upper=3, lower=3):
lowercase = string.lowercase
uppercase = string.uppercase
salt = '!@#$%^&*()><?'
password = list(
chain(
(choice(uppercase) for _ in range(upper)),
(choice(lowercase) for _ in range(lower)),
(choice(string.digits) for _ in range(digits)),
(choice(salt) for _ in range((length - digits - upper - lower)))
)
)
return "".join(sample(password, len(password)))
if __name__ == '__main__':
print mkpasswd()

腳本逐行解釋,最開始幾行導(dǎo)入了需要的模塊,接下來定義一個mkpasswd的函數(shù),函數(shù)的參數(shù)可以設(shè)置密碼長度,數(shù)字、大寫和小寫字符的個數(shù),接下來是函數(shù)主題部分:

利用string模塊的屬性生成大小寫字符串,salt是特殊字符集(支持自己添加),我們重點(diǎn)說password的生成,它首先是一個列表,因為調(diào)用了list()工廠函數(shù),chain()函數(shù)的功能是將一組迭代器對象連接起來,chain()里有三個生成器表達(dá)式,每個表達(dá)式調(diào)用for循環(huán),然后隨機(jī)選擇指定個數(shù)的字符,可能大家有看到for循環(huán)中有一個_(下劃線),這個下劃線有什么作用呢?我就不賣關(guān)子了,其實(shí)它啥作用也沒有,我自己理解為用不到的變量,這種寫法大家以后也可以用,比如你在循環(huán)的時候用不到這個變量,就可用用_(下劃線)來表示。

函數(shù)最后是return連接后的字符串,sample()函數(shù)是從隨機(jī)樣本中取出自己指定的樣本個數(shù),需要兩個參數(shù),一個是樣本,一個是取多少,取的過程是隨機(jī)的,其實(shí)在這個腳本中這個函數(shù)沒有發(fā)揮它完全的功能,因為生成的password就是12位的,然后在取出12位,不存在從大樣本中取出小樣本的工作,但起到了隨機(jī)的功能,所以生成的密碼是字符都是隨機(jī)的。

關(guān)于Python隨機(jī)生成帶特殊字符的密碼就給大家介紹到這里,希望對大家有所幫助!

相關(guān)文章

  • Python利用ROI進(jìn)行圖像合成的問題小結(jié)

    Python利用ROI進(jìn)行圖像合成的問題小結(jié)

    圖像的 ROI (region of interest) 是指圖像中感興趣區(qū)域、在 OpenCV 中圖像設(shè)置圖像 ROI 區(qū)域,實(shí)現(xiàn)只對 ROI 區(qū)域操作,本文給大家介紹Python利用ROI進(jìn)行圖像合成的問題小結(jié),感興趣的朋友一起看看吧
    2021-07-07
  • 30秒輕松實(shí)現(xiàn)TensorFlow物體檢測

    30秒輕松實(shí)現(xiàn)TensorFlow物體檢測

    這篇文章主要為大家詳細(xì)介紹了30秒輕松實(shí)現(xiàn)TensorFlow物體檢測,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • VScode查看python f.write()的文件亂碼問題及解決方法

    VScode查看python f.write()的文件亂碼問題及解決方法

    這篇文章主要介紹了VScode查看python f.write()的文件亂碼問題及解決方法,本文通過圖文并茂的形式給大家分享解決方法,需要的朋友可以參考下
    2023-02-02
  • 詳解Python中高階函數(shù)(map,filter,reduce,sorted)的使用

    詳解Python中高階函數(shù)(map,filter,reduce,sorted)的使用

    高階函數(shù)就是能夠把函數(shù)當(dāng)成參數(shù)傳遞的函數(shù)就是高階函數(shù),換句話說如果一個函數(shù)的參數(shù)是函數(shù),那么這個函數(shù)就是一個高階函數(shù)。本文為大家詳細(xì)講解了Python中常用的四個高階函數(shù),感興趣的可以了解一下
    2022-04-04
  • python安裝及變量名介紹詳解

    python安裝及變量名介紹詳解

    這篇文章主要介紹了python安裝及變量名介紹詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • 如何在pycharm中安裝第三方包

    如何在pycharm中安裝第三方包

    這篇文章主要介紹了如何在pycharm中安裝第三方包,本文分步驟通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • Python 中最長公共子序列的長度

    Python 中最長公共子序列的長度

    子序列是在不改變剩余字符的順序的情況下,在刪除一些字符或不刪除任何字符后從給定序列獲得的序列,這篇文章主要介紹了Python 中的最長公共子序列,需要的朋友可以參考下
    2023-06-06
  • Python繪制時鐘的示例代碼

    Python繪制時鐘的示例代碼

    這篇文章主要介紹了如何利用Python和Pygame庫繪制一個簡單的時鐘效果。文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-02-02
  • Python中常用腳本集錦分享

    Python中常用腳本集錦分享

    這篇文章為大家收集了一些常用Python腳本,作為平時練手使用,也可以作為自己的筆記,希望對大家有一定的幫助
    2024-11-11
  • Python趣味挑戰(zhàn)之實(shí)現(xiàn)簡易版音樂播放器

    Python趣味挑戰(zhàn)之實(shí)現(xiàn)簡易版音樂播放器

    小伙伴們天天學(xué)編程應(yīng)該都學(xué)累了,今天特地給大家整理了這篇文章,讓大家在學(xué)習(xí)的時候也收貨快樂,文中有非常詳細(xì)的代碼示例,需要的朋友可以參考下
    2021-05-05

最新評論

太原市| 阳原县| 台北县| 青铜峡市| 五莲县| 泰兴市| 重庆市| 阿拉善盟| 镇雄县| 房山区| 海盐县| 高安市| 皮山县| 惠水县| 雅江县| 江门市| 义乌市| 沈阳市| 任丘市| 呼图壁县| 临潭县| 宜宾县| 遂昌县| 东光县| 韶山市| 三明市| 东乌珠穆沁旗| 老河口市| 博爱县| 桐城市| 景洪市| 华安县| 剑阁县| 林州市| 偃师市| 庄河市| 孝感市| 琼结县| 房产| 乡城县| 建德市|