День 1: 15 дней Python

Обновление: я загружаю весь свой код lpthw на Github здесь (включая учебные упражнения).

Упражнение 17 было несложным для понимания. Здесь все, что делает программа (или скрипт, я люблю называть это программой), копирует содержимое одного файла (пусть это будет файл1) в другой (пусть это будет файл2). Да это оно. Он просто копирует содержимое из одного файла в другой файл, который может быть или не быть пустым. Если файл (файл2) не пуст и содержит какую-то важную информацию (зачем вам это делать!?), то, боже мой, у вас большие проблемы!

Это связано с тем, что файл, в который копируется содержимое другого файла (например, файл2), открывается в режиме «записи». Что делает режим записи, так это то, что он сначала удаляет все, что уже присутствовало в файле, а затем записывает то, что должно. В этом случае скопируйте содержимое другого файла.

Когда вы запускаете программу снова и снова, вы действительно не видите, в чем разница до и после ее запуска (если вы каждый раз используете один и тот же файл для копирования содержимого). Итак, я написал скрипт таким образом, чтобы файл открывался в режиме "добавления", который обозначается буквой "а" вместо "w". В режиме добавления вновь добавленный материал добавляется сразу после того, где заканчивается содержимое файла.

О «эхе» и «кошке» вам необходимо учить это. Это просто более причудливый способ создать файл, а затем поместить в него текст, который вы можете сделать без командной строки.

Да, и я совершенно забыл рассказать вам о «не такой уж большой» проблеме, которая у меня была (но это было довольно неприятно). Выполняя учебные упражнения, я столкнулся с чем-то. Это не ошибка, а аномалия в том, как windows сохраняет файл .txt (по крайней мере, я так думаю). При запуске программа скопировала текст из файла test.txt, но то, что появилось в файле new_file.txt, было на японском!! Я пытался сам понять, в чем проблема, но не смог. В конце концов я узнал, что это была проблема с кодировкой! new_file.txt был закодирован в UTF-16, а test.txt — в кодировке UTF-8. Поэтому, чтобы решить эту проблему, мне пришлось преобразовать его в UTF-8.

Упражнение 18 очень простое. Это всего лишь создание функций (или, как говорит автор, мини-скриптов). Здесь особо не о чем говорить, кроме этой вещи с «*args». Я был очень сбит с толку, увидев *args, и принял его за указатель (он выглядит именно так, подробнее об этом позже), но вскоре понял и понял, что это точно так же, как argv, который содержит только список аргументов. Учебное упражнение для этого упражнения того стоит. Очень рекомендую сделать именно так, как говорит автор.

Упражнение 19 более или менее похоже на упражнение 18. Разница в том, что в этом упражнении автор предлагает разные способы вызова функции. Настоящим вызовом является Учебное упражнение 3 этого упражнения. Я пытался создать функцию для простого сложения, но несколько раз терпел неудачу. Вот несколько снимков экрана с моими ошибками (привет пять, если вы получили то же самое!).

Как видите, поиск ошибок может быть весьма утомительным и утомительным (мне потребовалось около 20–30 минут, чтобы найти решение этой ошибки!!). Вам просто нужно быть сосредоточенным, целеустремленным и, самое главное, спокойным, чтобы что-то придумать.

Спасибо за чтение этой статьи! Ежедневно в этой серии публикуется статья (15 Days of Python), так что следите за новостями. Если вам понравился этот пост, пожалуйста, поделитесь им с другими и порекомендуйте от всего сердца.

Привет, ребята! Меня зовут Ашутош Патхак, я студентка бакалавриата из Индии. Я узнаю разные вещи из сети. Я больше всего очарован машинным обучением и его приложениями в реальном мире. Это мой путь к изучению, пониманию и внедрению моделей машинного обучения в одиночку. Так что приходите и отправляйтесь в незабываемое приключение!