Если вы пишете программу на Python и игнорируете синтаксис этого языка, то при запуске своей программы получите одну или несколько ошибок. Python сообщит вам, что ваш код не работает, и выдаст информацию об ошибке. Взгляните, что произойдет, если в Python вы попытаетесь определить строку с кавычками только с одной стороны.
my_string = «Привет, мир.
Traceback (most recent call last): File error.py, line 1 my_string = «Привет, мир. ^ SyntaxError: EOL while scanning string literal
Это сообщение указывает, что ваша программа содержит синтаксическую ошибку. Синтаксические ошибки фатальны; программа, содержащая их, не может работать. Когда вы пытаетесь запустить программу с синтаксической ошибкой, Python сообщает об этом.
Сообщение расскажет вам о том, в каком файле была ошибка, в какой она произошла строке, и что это была за ошибка. Хотя ошибки могут показаться пугающими, они случаются постоянно.
Если в вашем коде была допущена ошибка, вы должны перейти к номеру строки кода, в которой возникла проблема, и попытаться выяснить, что было сделано неправильно. В данном примере нужно перейти к первой строке. Если вы внимательно к ней присмотритесь, то заметите, что она содержит лишь открывающие кавычки. Чтобы исправить это, закройте кавычки в конце строки и повторно запустите программу.
Как открыть файл с расширением py в Python IDLE 3.10 ?
У Python есть два типа ошибок: синтаксические ошибки и исключения. Исключением называется любая ошибка, которая не является синтаксической. В отличие от синтаксических ошибок, исключения необязательно фатальны.
ZeroDivisionError — пример исключения, которое возникает при попытке деления на ноль пользователем, в случае если вами, как программистом, не предусмотрено ограничения такой возможности.
В процессе обучения программированию вы будете часто получать синтаксические ошибки и исключения, но со временем их количество снизится. Помните, когда вы сталкиваетесь с синтаксической ошибкой или исключением, переходите к строке, где возникла проблема, и всматривайтесь в нее, пока не найдете решение.
Обработка исключений ¶
Предположим, вы написали программу, которая принимает от пользователя два числа и выводит результат деления первого числа на второе:
a = input(«Введите число: «)b = input(«Введите еще одно число: «)a = int(a)b = int(b)print (a / b)
Программа будет работать. Однако если пользователь введет 0 в качестве второго числа, вы столкнетесь с ошибкой:
Traceback (most recent call last): module division.py line 5 ZeroDivisionError: division by zero
Нельзя просто надеяться, что пользователь не введет 0 и отличным способом выйти из положения может стать обработка исключений — инструмент, позволяющий «перехватить» исключения, если таковые возникают, и решить, что делать дальше.
Для обработки исключений используются ключевые слова try и except . При использовании обработки исключений, когда пользователь вторым числом вводит 0, программа может вывести им сообщение о недопустимости ввода нуля.
НАСТРОЙКА PyCharm И УСТАНОВКА Python 3.11 | ЛЕГКО И БЫСТРО!
Все исключения в Python являются объектами, так что вы можете использовать их в своих программах. Список встроенных исключений можно найти здесь . Если вам кажется, что ваш код может сгенерировать исключение, используйте составную инструкцию с ключевыми словами try и except , чтобы перехватить его.
Блок try содержит код, который может сгенерировать исключение. Блок except содержит код, который будет выполняться лишь в том случае, если внутри блока try появится исключение. Ниже приведен пример использования обработки исключений, когда программа не прерывается при вводе 0 в качестве второго числа.
try: a = input(«Введите число: «) b = input(«Введите еще одно число: «) a = int(a) b = int(b) print (a / b)except ZeroDivisionError: print(«b не может быть нулем!»)
Такая программа перехватит исключение ZeroDivisionError и передаст управление в блок except , в котором мы и выведем сообщение о недопустимости ввода 0.
Ваша программа также завершится с ошибкой, если пользователь введет строку, которую Python не может преобразовать в целое число. Попробуйте ввести вместо числа какое-нибудь слово и вы увидите примерно такое сообщение об ошибке:
Traceback (most recent call last): module division.py line 3 ValueError: invalid literal for int() with base 10: ‘слово’
Это можно исправить, перехватив оба типа исключений
try: a = input(«Введите число: «) b = input(«Введите еще одно число: «) a = int(a) b = int(b) print (a / b)except ZeroDivisionError: print(«b не может быть нулем!»)except ValueError: print(«Ошибка ввода числа»)
Не используйте в инструкции except переменные, определенные в try , поскольку исключение может возникнуть прежде, чем будет определена переменная, и как только вы попытаетесь использовать инструкцию except , внутри нее сгенерируется исключение.
try: 10 / 0 c = «Я никогда не определюсь.»except ZeroDivisionError: print(c)
Такая программа закончится с ошибкой
Traceback (most recent call last): module zero.py line 5 NameError: name ‘c’ is not defined
Источник: letpy.com
Проблема с запуском файла Python
При попытке запустить любой файл .py ничего не происходит, не выдает ни каких ошибок, просто на секунду открывается консоль открытия файла и сразу же закрывается, даже если код имеет ошибки. Python добавлен в PATH, и прекрасно работает в CMD. Python установил на официальном сайте, обновил Visual studio, удалил Avast, частично ограничил антивирус Window — ничего не изменилось. OC — Windows 10 64Bit
Отслеживать
user206435
задан 10 янв 2021 в 16:38
33 1 1 серебряный знак 6 6 бронзовых знаков
скачайте PY IDLE официальный, vs ужасно работает с .py файлами python.org/downloads
10 янв 2021 в 16:45
Не нужно ничего дописывать в заголовок, просто примите ответ который вам помог, галочка слева от ответа.
– user206435
7 фев 2021 в 8:19
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Немного дополню варианты ответа.
Запуск скриптов через IDE это для всех свои нюансы. Чтобы проверить работу скрипта запустите его через консоль cmd . Там будут видны все ошибки если они есть. Скрипт закрывается мгновенно по двум причинам:
- Все отработало как надо и скрипт завершил работу. Чтобы предотвратить закрытие добавьте в скрипт:
import os # ваш код os.system(«pause») # требует нажатие любой клавиши
- В скрипте произошла ошибка и он был завершен преждевременно. Запуск через cmd позволить увидеть где ошибка.
P.S. Под IDE попробуйте VSC (Visual studio code) более легковесная и удобная вещь чем оригинальный Visual studio. Еще популярен Pycharm, мне лично он не нравится но посмотреть стоит.
IDLE на сколько помню ставится с python, к сожалению функциональность не впечатляет. Ну и совсем легковесный вариант sublime text, но надо потратить немного времени на настройку. По выбору IDE все конечно же личное имхо не более.
Источник: ru.stackoverflow.com
Не запускается программа на Python или какую библиотеку установить чтобы посмотреть визуально свою программу?
Всем добрый день.
Начал изучать ЯП Python. И в голове возник интерес, как вообще выглядят визуально программки. Для это скачал код калькулятора и вставил в свой файл сохранил, но не запускается появляется на секунду программа и исчезает! успел разглядеть что не хватает какой то библиотеки! наверное она и отображает внешне программу! посоветуйте какие библиотеки нужно установить, и где их можно скачать, чтобы просмотреть визуально свою программу. Например тот же самый калькулятор или игру какую нибудь!
Спасибо.
- Вопрос задан более трёх лет назад
- 2591 просмотр
Комментировать
Решения вопроса 1
Пуск > CMD. В CMD запускаешь программу. Она тебе скажет чего не хватает. Далее pip install что-то чего не хватает.
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ответы на вопрос 2
запусти из командного интерпретатора cmd.exe и посмотри вывод команды:
Microsoft Windows [Version 6.1.7601] (c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены. C:Usersanelyubin>cd c:Python34 c:Python34>python.exe
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Всё я нашёл решение я сначала установил библиотеку. а потом Python 3.1. Удалил библиотеку и переустановил! проблема решилась, спасибо
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ваш ответ на вопрос
Войдите, чтобы написать ответ
- Python
- +1 ещё
Как передать данные в каждый браузер?
- 1 подписчик
- час назад
- 28 просмотров
Источник: qna.habr.com