Форум сайта python.su
Всем доброго времени суток!
Только начал изучать змея, решил сделать прогу определяющую индекс массы тела, потом её усложнил с помощью вложенных конструкций и так и не понял почему не работает и возникают ошибки. Помогите разобраться, код приведен ниже (python3).
Попутно есть несколько вопросов:
Обязательно ли при наличии условий с elif заканчивать блок с помощью else? (есть альтернатива для четкого написания инструкций м.б. что-то вроде end if ?)
В форточке часто прога завершается моргнув результатом… не всегда помогает написать какой-н raw_input , import os + os.system('pause') объясните какие ещё способы есть (+ в каких случаях их лучше применять) и как работает тот же пресловутый raw?
Хочу попробовать перевести эту прогу на рельсы андроида, куда копать, что ставить, в т.ч. для GUI (так и не нашел ясного руководства, рекомендуют бульдозеры и т.п.)? (Linux\Windows)
#index of weight Ketle import os sex = input("Укажите свой пол: ") age = int(input("Укажите свой возраст: ")) growth = float(input("Введите свой рост: ")) weight = float(input("Введите свой вес: ")) inwe = round(weight/(((growth/100)**2)), 2) #print("Индекс массы тела: " + inwe) #os.system('pause') if (age < 18): print("Вы слишком молоды!") elif (18 < age < 25): if (inwe < 17.59): print("Дефицит массы тела! Анорексия!") elif (17.59 < inwe < 18.59): print("Недостаточная масса тела!") elif (18.59 < inwe < 22.99): print("Норма") elif (22.99 < inwe < 27.49): print("Избыточная масса тела") elif (27.49 < inwe < 29.99): print("Ожирение!") elif (29.99 < inwe < 34.99): print("Резкое ожирение!") else: print("Очень резкое ожирение! Сплошной кусок жира!!!") else: if (inwe < 17.59): print("Дефицит массы тела! Анорексия!") elif (17.59 < inwe < 18.59): print("Недостаточная масса тела!") elif (18.59 < inwe < 25.99): print("Норма") elif (25.99 < inwe < 27.99): print("Избыточная масса тела") elif (27.99 < inwe < 30.99): print("Ожирение!") elif (30.99 < inwe < 35.99): print("Резкое ожирение!") else: print("Очень резкое ожирение! Сплошной кусок жира!!!") os.system('pause')
Офлайн
TochpadНе обязательно, обязательно только в том случае если необходимо чтоб какоето действие выполнилось если не одно из условий не соблюдено.
Попутно есть несколько вопросов:Обязательно ли при наличии условий с elif заканчивать блок с помощью else?
В форточке часто прога завершается моргнув результатом… не всегда помогает написать какой-н raw_input , import os + os.system('pause') объясните какие ещё способы есть (+ в каких случаях их лучше применять) и как работает тот же пресловутый raw?Надо запускать из консоли, тогда будет видно где ошибка, а программа так себя ведет когда в ней ошибка возникает.
Офлайн
BM21а если показывает правильный результат и сразу закрывается, это тоже ошибка? или это особенность какая?
Надо запускать из консоли, тогда будет видно где ошибка, а программа так себя ведет когда в ней ошибка возникает.
Тоесть запустить консоль , и в ней python script.py
Офлайн
Tochpad
Зачем писать python script.py если достаточно написать python? в чем прикол? это типа отладчик и что?
Офлайн
Papa_Svinдля этого прогу можно перевсети в ехе и т.п.
Прикольно. А вот допустим, написал ты супер-пупер программу на питоне, программа на 100500 строк, и теперь хочешь, чтобы весь мир начал ей пользоваться. Вот как по-твоему конечный потребитель должен запустить эту программу на своем компьютере?
Офлайн
Tochpadнет, нельзя. Если по-вашему можно, расскажите мне как.
для этого прогу можно перевсети в ехе и т.п.
TochpadОчевидно, запускает интерпретатор питона с аргументом script.py
что делает python script.py
TochpadДа вы бы какую книжку почитали, что ли. Нельзя же начинать изучать новую для себя технологию прям сразу с форума - у вас будет слишком много вопросов.
но полагаю не лишним будет описать прям тут на форуме для других людей, да и для меня лишним не будет.)
Офлайн
Papa_Svinнапример с помощью cx_Freeze или pyinstaller. Под “и т.п.” подразумевается компиляция не в чистый единый exe, а например в ехе с отдельными файлами, чтоб ехе не так много весил.
нет, нельзя. Если по-вашему можно, расскажите мне как.
И, кстати, меня прям таки невероятно заинтриговало это и т.п.
можно, еще какой-нибудь пример, подразумевающийся внутри этого и т.п.
Офлайн
Papa_Svinа что даёт этот аргумент?
Очевидно, запускает интерпретатор питона с аргументом script.py
Офлайн
Papa_SvinСогласен, что это не совсем традиционный способ, но по крайней мере он работает. Но не надо думать что я ничего больше не смотрю\читаю.
Да вы бы какую книжку почитали, что ли. Нельзя же начинать изучать новую для себя технологию прям сразу с форума - у вас будет слишком много вопросов.
Офлайн
BM21такой запуск из консольки не выкидывает из нее… спс. сначала не врубился что за “script.py”.
python script.py
Отредактировано Tochpad (Сен. 18, 2018 00:31:31)
Офлайн