Программа которая спрашивает имя пользователя и здоровается с ним python

«Программирование на Python: от начала к практике» Глава 10 Файлы и исключения

10-й файл и исключение

10-1 Примечания по изучению Python

Создайте новый файл в текстовом редакторе и напишите несколько предложений, чтобы обобщить знания Python, которые вы изучили до сих пор. Каждая строка начинается с «В Python вы можете». Назовите этот файл learning_python.txt и сохраните его в том же каталоге, что и программа, написанная для выполнения упражнений в этой главе. Напишите программу, которая читает этот файл и печатает то, что вы написали три раза: прочитать файл целиком при первой печати, обойти файловый объект для второй печати, сохранить строки в списке при печати в третий раз. , А затем распечатать их вне с блоком кода.

In python you can manipulate lists, dictionaries. In python you can create functions, classes. In python you can loop and test the code.

filename = ‘learning_python.txt’ with open(filename) as object: file = object.read() print(file) with open(filename) as object: for file in object: print(file) with open(filename) as object: files = object.readlines() for line in files: print(line.rstrip())

10-2 C для изучения языка

Пишем программу на python для вычета вашего возраста

Вы можете использовать метод replace () для замены определенного слова в строке другим словом. Вот простой пример, который демонстрирует, как заменить «собаку» на «кошку» в предложении:

>>> message = «I really like dogs.» >>> message.replace(‘dog’, ‘cat’) ‘I really like cats.’

Прочитайте каждую строку в файле learning_python.txt, который вы только что создали, и замените в нем Python именем другого языка, например C. Распечатайте измененные строки на экране.

filename = ‘learning_python.txt’ with open(filename) as object: file = object.read() file = file.replace(‘python’, ‘c’) print(file.rstrip())

10-3 посетителей

Напишите программу, которая предлагает пользователю ввести свое имя, после того как пользователь ответит, запишите его имя в файл guest.txt.

filename = ‘guest.txt’ x = input(«Please enter user name: «) with open(filename, ‘w’) as file_object: file_object.write(x.title())

10-4 Список посетителей

Напишите цикл while, который предлагает пользователю ввести его имя. После того, как пользователь вводит свое имя, на экране печатается приветствие, и запись о доступе добавляется в файл guest_book.txt. Убедитесь, что каждая запись в этом файле находится на отдельной строке.

filename = ‘guest_book.txt’ while True: x = input(«Please enter user name: «) print(«Hello, » + x.title()) with open(filename, ‘a’) as file_object: file_object.write(x.title() + » has visited.n»)

10-5 Опрос по программированию

Напишите цикл while, чтобы спросить пользователей, почему им нравится программирование. Каждый раз, когда пользователь вводит причину, он добавляется в файл, в котором хранятся все причины.

Учим python за 7 часов! Уроки Python Полный курс обучения программированию на python с нуля

Читайте также:
Как провести отладку программы


filename = ‘reason.txt’ while True: x = input(«Why do you like programing?») with open(filename, ‘a’) as file_object: file_object.write(x.title() + «n»)

10-6 Дополнение

Когда пользователь предлагает ввести числовой ввод, часто возникает проблема, заключающаяся в том, что пользователь предоставляет текст, а не цифры. В этом случае при попытке преобразовать входные данные в целое число выдается исключение TypeError. Напишите программу, которая предлагает пользователю ввести два числа, затем добавить их и распечатать результат. Исключение TypeError перехватывается, когда любое введенное пользователем значение не является числом, и выводится понятное сообщение об ошибке. Протестируйте программу, которую вы написали: сначала введите два числа, затем введите текст вместо цифр.

while True: print(«nPlease enter two numbers and the machine will calculate their sum.») print(«Enter ‘q’ to quit.») try: first_number = input(«Please enter the first number: «) if first_number == ‘q’: break first = int(first_number) second_number = input(«Please enter the second number: «) if second_number == ‘q’: break second = int(second_number) except ValueError: print(«nPlease enter a numeric type.n») else: answer = first + second print(answer)

10-7 Калькулятор сложения

Поместите код, который вы написали, чтобы выполнить упражнение 10-6 в цикле while, позволяя пользователю продолжать вводить цифры после ошибок (ввод текста вместо цифр).

while True: print(«nPlease enter two numbers and the machine will calculate their sum.») print(«Enter ‘q’ to quit.») try: first_number = input(«Please enter the first number: «) if first_number == ‘q’: break first = int(first_number) second_number = input(«Please enter the second number: «) if second_number == ‘q’: break second = int(second_number) except ValueError: print(«nPlease enter a numeric type.n») else: answer = first + second print(answer)

10-8 кошек и собак

Создайте два файла cats.txt и dogs.txt, сохраните имена как минимум трех кошек в первом файле и сохраните имена как минимум трех собак во втором файле. Напишите программу, которая пытается прочитать эти файлы и распечатать их содержимое на экране. Поместите эти коды в блок кода исключения, чтобы поймать ошибки FileNotFound, когда файл не существует, и распечатать дружеское сообщение. Переместите один из файлов в другое место и убедитесь, что код в блоке кроме кода будет выполняться правильно.

filename1 = ‘cat.txt’ filename2 = ‘dog.txt’ try: with open(filename1) as f1_object: f1 = f1_object.read() with open(filename2) as f2_object: f2 = f2_object.read() except FileNotFoundError: print(«Not aligned, the file does not exist.») else: print(f1) print(f2)

10-9 Тихие кошки и собаки

Измените то, что вы написали в упражнении 10-8 except Блоки кода, которые позволяют программе ничего не говорить, когда файл не существует.

filename1 = ‘cat.txt’ filename2 = ‘dog.txt’ try: with open(filename1) as f1_object: f1 = f1_object.read() with open(filename2) as f2_object: f2 = f2_object.read() except FileNotFoundError: pass else: print(f1) print(f2)

10-10 общих слов

Посетить проект Гутенберг (http://gutenberg.org/ ) И найдите книги, которые хотите проанализировать. Загрузите текстовые файлы этих работ или скопируйте оригинальный текст в браузере в текстовый файл.
Вы можете использовать метод count (), чтобы определить, сколько раз конкретное слово или фраза появляются в строке.
Обратите внимание, что с помощью lower () для преобразования строки в нижний регистр вы можете перехватывать все вхождения слова, которое хотите найти, независимо от его регистра.
Напишите программу, которая читает файлы, полученные вами в проекте Gutenberg, и подсчитывает, сколько раз слово «the» встречается в каждом файле.

filename = ‘book.txt’ with open(filename) as file_object: contents = file_object.read() numbers = contents.lower().count(‘the’) print(str(numbers))

Читайте также:
Что такое протон программа

10-11 любимый номер

Напишите программу, которая предлагает пользователю ввести номер, который ему нравится, и использует json.dump () для сохранения номера в файле. Напишите другую программу для считывания этого значения из файла и распечатайте сообщение «Я знаю ваш любимый номер! Это _____».

import json filename = ‘numbers.json’ def get_num(): numbers = input(«What is your favorite number?») with open(filename, ‘w’) as f_obj: json.dump(numbers, f_obj) def set_num(): with open(filename) as f_obj: user = json.load(f_obj) print(«I know your favorite numbers! It’s » + user + «.») get_num() set_num()

10-12 Запомни число, которое тебе нравится

Объедините две процедуры в Упражнениях 10-11 в одну. Если число, которое нравится пользователю, сохраняется, отобразите его для пользователя, в противном случае пользователю предлагается ввести номер, который он любит, и сохранить его в файле. Запустите эту программу дважды, чтобы увидеть, работает ли она должным образом.

import json filename = ‘numbers.json’ def get_num(): numbers = input(«What is your favorite number?») with open(filename, ‘w’) as f_obj: json.dump(numbers, f_obj) def set_num(): with open(filename) as f_obj: user = json.load(f_obj) if user: print(«I know your favorite numbers! It’s » + user + «.») else: get_num() get_num() set_num()

10-13 проверять подлинность пользователей

Последняя версия Remember_me.py предполагает, что пользователь либо ввел свое имя пользователя, либо запускает программу в первый раз. Мы должны изменить эту программу, чтобы справиться с ситуацией, когда текущий и последний пользователь, который запускает программу, не тот же человек.
По этой причине перед печатью сообщения, приветствующего пользователя в greet_user (), спросите его, правильно ли его имя пользователя. Если это не правильно, вызовите get_new_username (), чтобы позволить пользователю ввести правильное имя пользователя.

import json def get_stored_username(): «» «Если имя пользователя сохранено, получите его» «» filename = ‘username.json’ try: with open(filename) as f_obj: username = json.load(f_obj) except FileNotFoundError: return None else: return username def get_new_username(): «» «Предложите пользователю ввести имя пользователя» «» username = input(«What is your name?») filename = ‘username.json’ with open(filename, ‘w’) as f_obj: json.dump(username, f_obj) return username def greet_user(): «» «Приветствие пользователя и указание его имени, вопрос о том, сам ли он, или повторное ввод имени пользователя» «» username = get_stored_username() if username: answer = input(«Is this your username?(y/n)n» + username + «n») if answer == «y»: print(«Welcome back, » + username + «!») else: username = get_new_username() print(«Welcome back, » + username + «!») else: username = get_new_username() print(«We’ll remember you when you come back, » + username + «!»)

Источник: russianblogs.com

Программа которая спрашивает имя пользователя и здоровается с ним python

Напишите программу, которая приветствует пользователя, выводя слово Hello , введенное имя и знаки препинания по образцу:

Читайте также:
Программа которая делает лицо как у ребенка

Во всех задачах считывайте входные данные через input() и выводите ответ через print() .

Войти или зарегистрироваться, чтобы отправлять решения на проверку

Тесты

Harry
Hello, Harry!
Mr. Potter
Hello, Mr. Potter!
Lord Voldemort
Hello, Lord Voldemort!

Разработка и поддержка учебника: Виталий Павленко, Владимир Соломатин (2014), команда Pythontutor (2016)
Автор первоначального текста большинства уроков, задач и тестов: Д. П. Кириенко (см. оригинальный курс)
Идея учебника: В. М. Гуровиц
Разработчик визуализатора: Philip Guo (см. сайт визуализатора)
Родилось в 2012

Источник: pythontutor.ru

Простой Telegram-бот на Python за 30 минут

На Хабре, да и не только, про ботов рассказано уже так много, что даже слишком. Но заинтересовавшись пару недель назад данной темой, найти нормальный материал у меня так и не вышло: все статьи были либо для совсем чайников и ограничивались отправкой сообщения в ответ на сообщение пользователя, либо были неактуальны. Это и подтолкнуло меня на написание статьи, которая бы объяснила такому же новичку, как я, как написать и запустить более-менее осмысленного бота (с возможностью расширения функциональности).

Часть 1: Регистрация бота

Часть 2: Подготовка к написанию кода

Как уже было сказано в заголовке, писать бота мы будем на Python’е. В данной статье будет описана работа с библиотекой PyTelegramBotAPI (Telebot). Если у вас не установлен Python, то сперва нужно сделать это: в терминале Linux нужно ввести

sudo apt-get install python python-pip

Если же вы пользуетесь Windows, то нужно скачать Python с официального сайта .

После, в терминале Linux, или командной строке Windows вводим

pip install pytelegrambotapi

Теперь все готово для написания кода.

Часть 3: Получаем сообщения и говорим «Привет»

Небольшое отступление. Телеграмм умеет сообщать боту о действиях пользователя двумя способами: через ответ на запрос сервера (Long Poll), и через Webhook, когда сервер Телеграмма сам присылает сообщение о том, что кто-то написал боту. Второй способ явно выглядит лучше, но требует выделенного IP-адреса, и установленного SSL на сервере. В этой статье я хочу рассказать о написании бота, а не настройке сервера, поэтому пользоваться мы будем Long Poll’ом.

Открывайте ваш любимый текстовый редактор, и давайте писать код бота!

Первое, что нужно сделать это импортировать нашу библиотеку и подключить токен бота:

import telebot; bot = telebot.TeleBot(‘%ваш токен%’);

Теперь объявим метод для получения текстовых сообщений:

В этом участке кода мы объявили слушателя для текстовых сообщений и метод их обработки. Поле content_types может принимать разные значения, и не только одно, например

Будет реагировать на текстовые сообщения, документы и аудио. Более подробно можно почитать в официальной документации

Теперь добавим в наш метод немного функционала: если пользователь напишет нам «Привет», то скажем ему «Привет, чем я могу помочь?», а если нам напишут команду «/help», то скажем пользователю написать «Привет»:

if message.text == «Привет»: bot.send_message(message.from_user.id, «Привет, чем я могу тебе помочь?») elif message.text == «/help»: bot.send_message(message.from_user.id, «Напиши привет») else: bot.send_message(message.from_user.id, «Я тебя не понимаю. Напиши /help.»)

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru