python小工具
①排列和組合
對123進行排列,有以下結果:
123 132 213 231 312 321
隨機從1234中抽出 3個數,這是一個組合問題,有以下的結果:
123 234 134 124 (123和321和132等等都是同一個結果)
四位由1234組成的密碼,_ _ _ _
一共有444*4種可能
import itertools
mylist1=list(itertools.permutations([1,2,3],2)) #排列
print(mylist1)
#[(1, 2), (1, 3), (2, 1), (2, 3), (3, 1), (3, 2)]
mylist2=list(itertools.combinations([1,2,3,4],3))#組合
print(mylist2)
#[(1, 2, 3), (1, 2, 4), (1, 3, 4), (2, 3, 4)]
mylist3=list(itertools.product("0123456789",repeat=6))
print(mylist3) #由0123456789組成的6位密碼
import itertools
mylist=list(itertools.product("1234",repeat=2))
print(mylist)
#[('1', '1'), ('1', '2'), ('1', '3'),,,,]
mylist1=["".join(x) for x in itertools.product("1234",repeat=2)]
print(mylist1)
#['11', '12', '13',,,]
②join()方法語法:
str.join(sequence)
str = "-";
seq = ("a", "b", "c"); # 字串序列
print(str.join( seq ));
#a-b-c
③yield生成器
窮舉的方法不一定是print,也可以是yield
#從那麼多數字字母中生成一個16位可以重複的密碼,如果你用print那會相當的佔記憶體,所以你可以用yield來不佔記憶體的輸出
import itertools
for x in itertools.product("0123456789abcdefghijklmnopqrstuvwxyz",repeat=16):
print("".join(x))
import itertools
def getpassword():
for x in itertools.product("0123456789abcdefghijklmnopqrstuvwxyz",repeat=16):
yield "".join(x)
T=getpassword()
for i in range(1000):
print(next(T))
相關文章
- python內建小工具Python
- python小工具: GUI開發工具 FlexxPythonGUIFlex
- Python配合Redis寫個Remember小工具PythonRedisREM
- 用PYTHON初次編寫小工具心得Python
- 用 Python 製作截圖小工具Python
- python-opencv顏色分析小工具PythonOpenCV
- 【Python 開發】第三篇:python 實用小工具Python
- Linux效能運維–三個Python小工具Linux運維Python
- 使用 Docker 封裝 Python 小工具生成 GitBook PDFDocker封裝PythonGit
- python:用pyinstaller做個排列組合的小工具Python
- 基於Python命令列的NBA文字直播小工具Python命令列
- 日常小工具
- Python世界tqdm進度條顯示等新潮小工具推薦Python
- 小工具實戰-Python 實現小工具輸出字串大小寫轉換、字串統計、編解碼、MD5 加密Python字串加密
- 汽車小工具
- 聯盟小工具
- 串列埠小工具串列埠
- 幾個可以提高工作效率的 Python 內建小工具Python
- Python GUI開發- PyQt5 開發小工具環境入門PythonGUIQT
- 用Python寫一個向資料庫填充資料的小工具Python資料庫
- 用 Python 寫了一個 Let's Encrypt 的 wildcard 證照小工具Python
- 前端實用小工具前端
- Postman小工具大妙用Postman
- 小工具網站集合網站
- 遠端小工具PuTTY
- 撩妹小工具 MarvellousMouse
- 開源一個製作小工具的小工具,順便求個 star
- 常用的小工具程式碼
- WordPress小工具功能如何使用
- Web開發小工具介紹Web
- WPS 文件分享介面整合小工具
- 自己手寫的JS小工具JS
- 一文多發小工具
- Thor for Mac快捷鍵的小工具Mac
- 整理js開發中的實用小工具(一):做一個整合儲存的小工具JS
- gitPic,利用Github做圖床小工具Github圖床
- 一個生日郵件提醒小工具
- 測試網路效能的小工具