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

Python itertools.product方法代碼實例

 更新時間:2020年03月27日 10:51:19   投稿:yaominghui  
這篇文章主要介紹了Python itertools.product方法代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

itertools.product:類似于求多個可迭代對象的笛卡爾積。

使用的形式是:

itertools.product(*iterables, repeat=1),

product(X, repeat=3)等價于product(X, X, X)。

1. 直接使用時:分別生成元組,然后合成一個list

import itertools
aa = itertools.product(['西藏','瀑布','湖水'], ['月色','星空'])
bb = list(aa)  #按照順序生成笛卡爾積,repeat默認是1
print(bb)

2. 假設設置:repeat=3

random_list = list(itertools.product(['西藏','瀑布','湖水'], ['月色','星空'], repeat=3))
print(random_list) #此list長度為216

為什么會是216呢?

首先,在不設置 repeat 參數(shù)的時候,默認是1,生成的list長度時6 —— 這可以用數(shù)學的排列組合來表示,從第一個參數(shù)['西藏','瀑布','湖水']取出一個值,有3種可能;從第二個參數(shù)['月色','星空']取出一個值,有2種可能;故 3*2=6種結(jié)果。

然后,當設置 repeat=3 時,也就是說將 repeat=1(默認)的結(jié)果再重復2次后(也就是最后一共有3套一樣的第一層結(jié)果)再進行排列組合,從第一個結(jié)果(6種結(jié)果)取出一個元素的可能有6種,同理,從第二第三個重復結(jié)果中取出一個元素的可能各有6種,于是它們的組合就有6*6*6=216種。

當然,也是先合成一個元組再組成list的。

3. 所以也能理解下面的結(jié)果是27種了吧

random_list = list(itertools.product(['西藏','瀑布','湖水'], repeat=3))
print(random_list)

因為第一層結(jié)果是3種可能;執(zhí)行該操作3次,就形成了第一層的3套一樣的結(jié)果(每個結(jié)果各有3種可能),然后再排列組合就是 3*3*3=27種結(jié)果。

4. 如果要從列表中隨機取出幾個不重復的元素的話(原來的列表本身元素不重復),可用 random.sample 方法。

import random
random.seed(1)  #設置隨機數(shù)種子,可用來檢測相同的隨機數(shù)得到的結(jié)果是否一致
n = 2
aa = random.sample(random_list, n)  #隨機列表中的n個元素
print(aa)

也就是從上述27種結(jié)果中,隨機取出2種,得到:

5. 此方法可以用于生成隨機的坐標

random_list = list(itertools.product(range(1,4), range(1,2)))
print(random_list)
n = 2
aa = random.sample(random_list, n)  #隨機列表中的n個元素
print(aa)

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Django框架驗證碼用法實例分析

    Django框架驗證碼用法實例分析

    這篇文章主要介紹了Django框架驗證碼用法,結(jié)合實例形式分析了Python Django框架驗證碼的功能、實現(xiàn)方法及相關操作技巧,需要的朋友可以參考下
    2019-05-05
  • Python中用Descriptor實現(xiàn)類級屬性(Property)詳解

    Python中用Descriptor實現(xiàn)類級屬性(Property)詳解

    這篇文章主要介紹了Python中用Descriptor實現(xiàn)類級屬性(Property)詳解,本文先是講解了decorator是什么,然后給出了通過Descriptor來做一個類級的Property實例,需要的朋友可以參考下
    2014-09-09
  • Pandas中DataFrame基本函數(shù)整理(小結(jié))

    Pandas中DataFrame基本函數(shù)整理(小結(jié))

    這篇文章主要介紹了Pandas中DataFrame基本函數(shù)整理(小結(jié)),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • Python爬蟲之Selenium下拉框處理的實現(xiàn)

    Python爬蟲之Selenium下拉框處理的實現(xiàn)

    這篇文章主要介紹了Python爬蟲之Selenium下拉框處理的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • python paramiko連接ssh實現(xiàn)命令

    python paramiko連接ssh實現(xiàn)命令

    這篇文章主要為大家介紹了python paramiko連接ssh實現(xiàn)的命令詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • 深入了解Python如何操作MongoDB

    深入了解Python如何操作MongoDB

    MongoDB是由C++語言編寫的非關系型數(shù)據(jù)庫,是一個基于分布式文件存儲的開源數(shù)據(jù)庫系統(tǒng)。本文主要介紹了如何通過Python操作MongoDB,需要的可以參考一下
    2022-01-01
  • Python中[?]、[:]和[::]的用法總結(jié)

    Python中[?]、[:]和[::]的用法總結(jié)

    [:]與[::]語法是通用序列操作(Common Sequence Operations)其中的兩個,下面這篇文章主要給大家介紹了關于Python中[?]、[:]和[::]用法的相關資料,文中通過實例代碼介紹的非常全面,需要的朋友可以參考下
    2023-06-06
  • python開發(fā)之文件操作用法實例

    python開發(fā)之文件操作用法實例

    這篇文章主要介紹了python開發(fā)之文件操作用法,以實例形式較為詳細的分析了Python針對文件的路徑、文件名、后綴名等操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11
  • 關于torch.scatter與torch_scatter庫的使用整理

    關于torch.scatter與torch_scatter庫的使用整理

    這篇文章主要介紹了關于torch.scatter與torch_scatter庫的使用整理,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 如何使用?Python?Timedelta?月份計算日期

    如何使用?Python?Timedelta?月份計算日期

    在本篇文章中,我們將通過?timedelta?學習如何在?Python?中使用日期時間,?我們將了解如何計算當前日期或任何其他日期六個月后的日期,本文通過示例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2023-10-10

最新評論

璧山县| 南溪县| 孝感市| 青田县| 彭水| 蒙城县| 高台县| 久治县| 木里| 崇信县| 聊城市| 庆元县| 灯塔市| 沈丘县| 南木林县| 宣汉县| 罗源县| 青神县| 木里| 贵港市| 牡丹江市| 连南| 海兴县| 育儿| 收藏| 平凉市| 镇康县| 遵化市| 兴化市| 潼南县| 大冶市| 利津县| 大安市| 寿宁县| 皋兰县| 厦门市| 镇平县| 孙吴县| 枝江市| 龙泉市| 封丘县|