Python код для проверки повторения в строке - PullRequest
0 голосов
/ 15 февраля 2020

Я пытаюсь построить логи c в программировании. Мне нужно написать функцию python, которая принимает строку в качестве входных данных и проверяет, появляется ли какой-либо символ более одного раза. Функция должна возвращать True, если нет повторений, и False в противном случае. Я искал в Интернете и нашел несколько примеров, связанных с этим. Я написал код, и поначалу он выглядел нормально, но потом я понял свою ошибку, и теперь я не понимаю, как я должен go об этом. Пожалуйста, руководство

def repfree(S):   
    for char in S:
        if S.count(char) > 1:
            return True
    return False

Ответы [ 4 ]

0 голосов
/ 15 февраля 2020

Это должно быть сделано с использованием структуры данных набора python, набор имеет свойство, в котором всегда будут только уникальные символы.

string="country"
def repetion(string):
    if len(set(string)) == len(string):
       print("string is having unique chars")
    else:
       print("chars are different")
0 голосов
/ 15 февраля 2020

Вы можете примерить следующий код.

def rep_free(text):   
    return len(text) != len(set(text))

Заданный объект - это неупорядоченная коллекция различных хеш-объектов. Обычное использование включает тестирование членства, удаление дубликатов из последовательности и вычисление математических операций, таких как пересечение, объединение, разность и симметрия c разница. (Другие контейнеры см. Во встроенных классах dict, list, tuple и модуле коллекций.)

From python do c

0 голосов
/ 15 февраля 2020

Здесь вы можете создать список символов, чтобы отслеживать символы, которые уже встречались в S.

Посмотрите на приведенный ниже код, надеюсь, он поможет:>

def repfree(S):   
    freq = []
    for char in S:
        # if the character is already in list that means S contains repeated char
        if char in freq:
            return False
        else:
            freq.append(char)

    return True
0 голосов
/ 15 февраля 2020

Как насчет использования set

def repfree(s):
    char_set = set()
    for c in s:
         char_set.append(c)
     return len(char_set) == len(s)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...