Мне нужно проверить, существует ли перестановка переменной в другой переменной, и увеличить переменную счетчика, если она не существует.
Мне удалось создать условный оператор с циклами for, чтобы составить список необходимых перестановок и проверить, существует ли переменная в нем.Мне нужно превратить его в функцию, чтобы я мог сделать код чище, так как мне нужна функция для проверки нескольких переменных по нескольким переменным.
charList = ['A', 'B', 'C'] #actual code has other items in this list
name = "JOHN" #actual variable whose permutations are to be made for checking
checkName = "JOAN" #target variable to check against the permutations of above variable
counter = 0
if checkName is name:
print('found1')
elif checkName in (name[:i] + c + name[i + 1:] for i in range(len(name)) for c in charList):
print('found2')
elif checkName in ([name[:i] + c + name[i:] for i in range(len(name)) for c in charList]):
print('found3')
elif checkName in ([name[0:i] + name[i+1] + name[i] + name[i+2:] for i in range(len(name) - 1)]):
print('found4')
else:
counter += 1
print(counter)
Как превратить это в функцию, чтобы, просто используя другую переменную имени, я непосредственно получал вывод либо оператора print, либо приращения в счетчике?
Я только начинающий, поэтому, пожалуйста, помогите мне понять концепцию создания функций на этом примере.Мне приходится иметь дело с двумя переменными, одна из которых проходит по списку, и, будучи нубом, я понятия не имею, что делать.
PS Я только учусь, и приведенный выше код является пробным прогоном, поэтому, пожалуйста,игнорировать функции печати после каждого оператора if.