itertools.product。
成都创新互联公司是一家朝气蓬勃的网站建设公司。公司专注于为企业提供信息化建设解决方案。从事网站开发,网站制作,网站设计,网站模板,微信公众号开发,软件开发,微信平台小程序开发,10余年建站对PVC花箱等多个领域,拥有丰富的网站制作经验。
r语言combn函数是一种排列组合的函数,python中排列组合的函数是itertools.product(sequence,repeat)。
import math
m = int(input("请输入第一个数字:"))
n = int(input("请输入第二个数字:"))
if m 0 or n 0 or m - n 0:
print("负数是没有阶乘,请重新输入!")
else:
result = math.factorial(m) / math.factorial(n) / math.factorial(m - n)
print("按照公式C(m, n) = m!/n! /(m - n)!,C({0},{1})的答案为 {2}".format(m, n, result))
enumerate(x,y)函数是把元组tuple、字符串str、列表list里面的元素遍历和索引组合,其用法与range()函数很相似,
下面示例enumerate(x,y)用法以及range(x)相似的用法,但是,enumerate(x,y)函数在遍历excel等时,可以实现与人视觉了解到的认识更好的理解。
enumerate(x,y)中参数y可以省略,省略时,默认从0开始,
如示例一:
list_words=["this","is","blog","of","white","mouse"]
for idx,word in enumerate(list_words):
print(idx,word)
打印结果:
使用range()函数遍历实现:
list_words=["this","is","blog","of","white","mouse"]
for i in range(len(list_words)):
print(i,list_words[i])
打印结果:
自定义开始索引号:
示例二:
list_words=["this","is","blog","of","white","mouse"]
for idx,word in enumerate(list_words[1:],2):#也可以写成for idx,word in enumerate(list_words,start=2):
print(idx,word)
打印结果:
从上面示例中可以看出,enumerate(x,y)中x是需要遍历的元组tuple、字符串str、列表list,可以和切片组合使用,
y是自定义开始的索引号,根据自己的需要设置开始索引号。
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
#python2.7
import string,random
def get_clice(num):
res =[]
tmp = list(string.lowercase)
for i in range(num):
res.append(''.join(random.sample(tmp,random.randint(3,7))))
return res
print get_clice(20)