2012-04-05 3 views
-1

Я пытаюсь решить проблемы Python в pythonchallenge.com. Я на уровне 2. Меня попросили найти редкие символы в очень большом тексте, который указан в исходном коде веб-страницы. Вот он: http://www.pythonchallenge.com/pc/def/ocr.htmlPython Challenge Уровень 2

Прежде всего, я не хочу никаких решений для этого. Я просто хочу решить это самостоятельно, но я не продвинутый программист на Python. Так вы можете сказать мне, что нужно изучать, чтобы решить эту проблему? Я также не знаю, как работать с файлами очень хорошо. В некоторых подсказках на форуме упоминается, что для его решения следует использовать файлы. Так вы можете показать мне, что учиться?

+0

Искать здесь, на этом сайте. например: введите 'python read file' –

ответ

1

Подсказка 1: Чтобы открыть и прочитать содержимое файла, используйте

with open("filename") as f: 
    contents = f.read() 

Подсказка 2: Для подсчета символов, один вариант заключается в использовании Counter.

2

Прежде всего, прочитайте все символы в строке. Вы можете использовать urllib2, чтобы загрузить файл, open, чтобы прочитать его с локального диска или жестко указать его содержимое. Чтобы включить такую ​​длинную строку вашей программы на Python, вы можете захотеть использовать triple-quotes строки, например:

""" 
%%[email protected]_$^__#)^)&!_+]!*@&^}@[@%]()%+$&[([email protected]%+%$*^@$^!+]!&_#)_*}{}}!}_]$[%}@[{[email protected]#_^{* 
@##&{#&{&)*%(]{{([*}@[@&]+!!*{)!}{%+{))])[!^})+)$]#{*+^((@^@}$[**$&^{[email protected]#$%)[email protected](& 
... 
""" 

Чтобы узнать количество вхождений каждого символа, взглянуть на collections.Counter.

2

Используйте Counter из коллекций , чтобы подсчитать количество вхождений каждого символа, чтобы найти «редкие» символы.

Я оставлю остальное для вас, чтобы выяснить, после просмотра результатов подсчета.