python 中itertools 模組(五)

2021-09-25 23:04:58 字數 1981 閱讀 1107

product()

import itertools

for i in itertools.product('python'):#類似於for迴圈

print(i)

執行結果:

d:\python\python36\python.exe d:/python_test/day_lesson/test.py

(『p』,)

(『y』,)

(『t』,)

(『h』,)

(『o』,)

(『n』,)

process finished with exit code 0

import itertools

for i in itertools.product('helo', repeat=2):#長度2元組

print(i)

執行結果

d:\python\python36\python.exe d:/python_test/day_lesson/test.py

(『h』, 『h』)

(『h』, 『e』)

(『h』, 『l』)

(『h』, 『o』)

(『e』, 『h』)

(『e』, 『e』)

(『e』, 『l』)

(『e』, 『o』)

(『l』, 『h』)

(『l』, 『e』)

(『l』, 『l』)

(『l』, 『o』)

(『o』, 『h』)

(『o』, 『e』)

(『o』, 『l』)

(『o』, 『o』)

process finished with exit code 0

permutations()

import itertools

for i in itertools.permutations(range(1, 4), 2):#長度2元組,所有可能的排列,無重複元素

print(i)

執行結果

d:\python\python36\python.exe d:/python_test/day_lesson/test.py

(1, 2)

(1, 3)

(2, 1)

(2, 3)

(3, 1)

(3, 2)

process finished with exit code 0

combinations()

import itertools

for i in itertools.combinations(range(1, 4), 2):#長度2元組,有序,無重複元素

print(i)

執行結果

d:\python\python36\python.exe d:/python_test/day_lesson/test.py

(1, 2)

(1, 3)

(2, 3)

process finished with exit code 0

combinations_with_replacement()

import itertools

for i in itertools.combinations_with_replacement(range(1, 4), 2):#長度2元組,有序,元素可重複

print(i)

執行結果

d:\python\python36\python.exe d:/python_test/day_lesson/test.py

(1, 1)

(1, 2)

(1, 3)

(2, 2)

(2, 3)

(3, 3)

process finished with exit code 0

python 常用內建函式itertools

參考文章 python 內建的 itertools 模組包含了一系列用來產生不同型別迭代器的函式或類,這些函式的返回都是乙個迭代器,我們可以通過 for 迴圈來遍歷取值,也可以使用 next 來取值。itertools 模組提供的迭代器函式有以下幾種型別 無限迭代器 生成乙個無限序列,比如自然數序列...

摸魚小幫手 Python的itertools模組

終止於最短輸入序列的迭代器 組合生成器 for i in itertools.count print i 01 234.for i in itertools.cycle 2,3,4,5 print i 23 4523 452.for i in itertools.repeat 雪碧 print i ...

Leetcode之迭代器(itertools模組)

今天做到乙個題目 17.letter combinations of a phone number given a digit string,return all possible letter combinations that the number could represent.這道題第一反應...