#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)