BMI Calculator using Python 3
for a starter I see tree aspects which you could upgrade:


Improve code readability
Make code reusable
Improve validation / error handling.


From main_page() extract 4 functions:


get_user_height()
get_user_weight()
calculate_bmi(height, weight)
print_bmi_description(bmi)


In get_user_height() and get_user_weight() user input. What is min and max value which are correct in your model? e.g. nobody has weight of -1.0.
Make sure that you can trust this functions i.e. they return only valid values.

calculate_bmi(height, weight) - extracting calculation code to distinct function makes it easy to reuse and test (unit tests or even simpler in interactive console).

print_bmi_description(bmi) - make sure your logic covers all possible values. By covers I mean it returns correct description or throws an error (ie. for negative BMIs). 


You should remove redundant code eg. BMI &lt; 18.5 or BMI &lt;25 -
check only for BMI &lt;25.
Validate your logic. BMI &lt; 30 or BMI &lt; 40 seems incorrect. I think it should be BMI &gt; 30 or BMI &lt; 40 or in more pythonic way 30 &lt; BMI &lt; 40


I think it is enough for know. If you make this changes we could make next step :-)