python 一个类和函数,它为给定列表构造length = 2的所有可能组合。它使用一个环形循环,每个函数调用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 一个类和函数,它为给定列表构造length = 2的所有可能组合。它使用一个环形循环,每个函数调用相关的知识,希望对你有一定的参考价值。

class combo_pair_maker (object):
	
	def __init__(self, list):
		self.list = list
		self.template, self.combinations = [], []
		self.dictindex = len(self.combinations) + 1
		self.second_digit, self.index_num = 1, 0
	def combomaker(self): #constructs each pair and appends to a list
		self.template = [self.list[self.index_num], self.list[self.second_digit]]
		self.combinations.append(self.template)
		self.template = []
		combo_pair_maker.combo_checker(self)
	def combo_checker(self): #confirms the indexes being paired
		if self.second_digit < len(self.list) - 1:
			self.second_digit += 1
			combo_pair_maker.combomaker(self)
		if self.second_digit == len(self.list) - 1:
			combo_pair_maker.index_checker(self)
	def index_checker(self):
		if self.index_num < len(self.list) - 2:
			self.index_num += 1
			self.second_digit = self.index_num + 1
			combo_pair_maker.combomaker(self)
		if self.index_num == len(self.list) - 2:
			return self.combinations
def pair_constructor(list):
	pairs = combo_pair_maker(list)
	combo_pair_maker.combomaker(pairs)
	return pairs.combinations
	
		

以上是关于python 一个类和函数,它为给定列表构造length = 2的所有可能组合。它使用一个环形循环,每个函数调用的主要内容,如果未能解决你的问题,请参考以下文章

C++类和对象下

Python基础——类和对象

Python基础——类和对象

Python基础——类和对象

类和对象(下)

构造函数初始化列表