Как разделить файл на символы

#python #python-3.x #list #function

#python #python-3.x #Список #функция

Вопрос:

Я создаю функцию python для поиска наиболее распространенной буквы в файле. Однако я не могу разделить файл на символы.

Вот мой код на данный момент:

 def common_letter_file(file):
    try:
        handle = open(file)
    except:
        print('Enter a valid file. Make sure the file is in the same directory as your python program')
        quit()
    for line in handle:
        words = line.split()
        for word in words:
            letter_list = [char for char in word]
        print(letter_list)
    counts = dict()
    for letter in letter_list:
        counts[letter] = counts.get(letter, 0)   1
    biggest_count = None
    common_letter = None
    for letter,count in counts.items():
        if biggest_count is None or count > biggest_count:
            biggest_count = count
            common_letter = letter
    print('The most common letter was',common_letter,'and its count was',biggest_count)
 

Работает попытка и исключение, а также поиск символа с наибольшей частотой. Однако объединение файла в список не работает
Пожалуйста, помогите, спасибо

Ответ №1:

Вы можете разделить строку на отдельные символы следующим образом:

 >>> my_str = "foo"
>>> list(my_str)
['f', 'o', 'o']
 

Редактировать:
В случае КАВАЯ этого было достаточно:

 list(handle.read().replace("n", ""))
 

И вернул бы каждый символ в списке по порядку в файле.

Комментарии:

1. Я хочу разделить файл на символы, а не на строку

2. @KAVAYSHARMA_ITSMEKAV В вашем случае вы могли бы использовать list(handle.read().replace("n", ""))

3. @KAVAYSHARMA_ITSMEKAV примите ответ, если он ответил на ваш вопрос!

4. Да, он показывает принять ответ через 3 минуты

Ответ №2:

 line = "Ihavebeenworkingfor9hours"
line.split()

for i in line.split(): # need not to convert it to explicitly
    print(i)           # the better to check the lines
    for j in i:
        print(j)