itertools.product方法怎么在Python中使用-创新互联
本篇文章给大家分享的是有关 itertools.product方法怎么在Python中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
成都网站设计、网站制作的开发,更需要了解用户,从用户角度来建设网站,获得较好的用户体验。成都创新互联公司多年互联网经验,见的多,沟通容易、能帮助客户提出的运营建议。作为成都一家网络公司,打造的就是网站建设产品直销的概念。选择成都创新互联公司,不只是建站,我们把建站作为产品,不断的更新、完善,让每位来访用户感受到浩方产品的价值服务。python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pillow;4.twisted;5.numpy;6.matplotlib;7.pygama;8.ipyhton等。
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 参数的时候,默认是1,生成的list长度时6 —— 这可以用数学的排列组合来表示,从第一个参数['西藏','瀑布','湖水']取出一个值,有3种可能;从第二个参数['月色','星空']取出一个值,有2种可能;故 3*2=6种结果。
然后,当设置 repeat=3 时,也就是说将 repeat=1(默认)的结果再重复2次后(也就是最后一共有3套一样的第一层结果)再进行排列组合,从第一个结果(6种结果)取出一个元素的可能有6种,同理,从第二第三个重复结果中取出一个元素的可能各有6种,于是它们的组合就有6*6*6=216种。
当然,也是先合成一个元组再组成list的。
3. 所以也能理解下面的结果是27种了吧
random_list = list(itertools.product(['西藏','瀑布','湖水'], repeat=3)) print(random_list)
因为第一层结果是3种可能;执行该操作3次,就形成了第一层的3套一样的结果(每个结果各有3种可能),然后再排列组合就是 3*3*3=27种结果。
4. 如果要从列表中随机取出几个不重复的元素的话(原来的列表本身元素不重复),可用 random.sample 方法。
import random random.seed(1) #设置随机数种子,可用来检测相同的随机数得到的结果是否一致 n = 2 aa = random.sample(random_list, n) #随机列表中的n个元素 print(aa)
也就是从上述27种结果中,随机取出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)
以上就是 itertools.product方法怎么在Python中使用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。
当前名称:itertools.product方法怎么在Python中使用-创新互联
分享URL:http://hbruida.cn/article/ieege.html