Hangman game implemented in Python
Whitespace Following Code Blocks
According to the Python style guide, you should use whitespace sparingly. Try aiming for one single line between functions and code blocks.
Unclear Function Naming
main_func() is not a very clear function name. As a developer reading the code, I am unsure as to what this function contains.
For a solution to this problem, read the next section:
Single-Responsibility Principle
Instead of grouping all of the main game code into main_func(), figure out blocks of code that have a single responsibility, and refactor them into their own function.
For example, the start of main_func() contains code to choose a word. You could refactor this into a choose_word() function that takes the list of words. From this point, you might choose to not pass word_lst into main_func, but instead the chosen word as a result of the choose_word() function.
As another example, further into your main_func() function, you may choose to refactor the &quot;check&quot; code (to see if the player has correctly guessed the word) into a check_guess() function.
Parameter Naming
I am not sure if this is just a typo or a stylistic choice, but you should rename word_lst to word_list. In this example, other developers (and possibly yourself in future) will be able to figure out that lst == list, but some words may not be so obvious. Try not to shorten words when naming variables parameters.