Вот еще один пример, который был протестирован и будет соответствовать поиску и amp; заменить шаблоны:
import fileinput
import sys
def replaceAll(file,searchExp,replaceExp):
for line in fileinput.input(file, inplace=1):
if searchExp in line:
line = line.replace(searchExp,replaceExp)
sys.stdout.write(line)
Пример использования:
replaceAll("/fooBar.txt","Hello\sWorld!$","Goodbye\sWorld.")
Попробуйте следующее:
Прочитав статью немного дальше, вы узнаете о разнице между ними и о том, когда вы можете рассмотреть возможность использования Context приложения ( Activity.getApplicationContext ()
) вместо использования Activity context this
). В основном контекст приложения связан с приложением и всегда будет одним и тем же на протяжении всего жизненного цикла вашего приложения, тогда как контекст действия связан с действием и может быть уничтожен много раз, поскольку действие уничтожается во время изменения ориентации экрана и
Я не смог найти ничего о том, когда использовать getBaseContext (), кроме сообщения Дайанн Хакборн, одной из инженеров Google, работающих над Android SDK:
Не используйте getBaseContext (), просто использовать контекст, который у вас есть.
Это было из сообщения в группе новостей разработчиков Android , вы можете подумать о том, чтобы задать свой вопрос и там, потому что горстка людей, работающих над настоящим монитором Android, группы новостей и ответьте на вопросы.
Поэтому в целом кажется предпочтительным использовать глобальный контекст приложения, когда это возможно.
Во-первых, я согласен, что мы должны использовать appcontext везде, где это возможно. затем "this" в activity. у меня никогда не было необходимости в basecontext.
В моих тестах в большинстве случаев их можно менять местами. В большинстве случаев, причина, по которой вы хотите получить доступ к контексту - это доступ к файлам, предпочтениям, базе данных и т.д. Эти данные в конечном итоге отражаются в виде файлов в личной папке данных вашего приложения (/data/data/). Независимо от того, какой контекст вы используете, они будут сопоставлены с той же папкой/файлами, так что вы в порядке.
Это то, что я наблюдал. Возможно, есть случаи, когда их следует различать.