Milos Radosavljevic Milos Radosavljevic - 12 days ago 5
Python Question

Defining variable in if

I am trying to call a function in an

if
, save the value in a variable and check if the value is equal to something.
Have tried:

def funk():
return ("Some text")

msg=""
if (msg=funk()) == "Some resut":
print ("Result 1")


I am getting a syntax error. Can this be done?

I'm coming from C and I know that this can work:

#include <stdio.h>

char funk()
{
return 'a';
}
int main()
{
char a;
if( a=funk() == 'a' )
printf("Hello, World!\n");
return 0;
}


Is this possible in python?

P.S. The functions are simple so it is easier to understand what I want. I will not use the some functions in my program. If you give me a MINUS please explain in comment so I can make better questions in the future

Answer

Python purposely doesn't support it because it hurts readability. It needs to be two lines.

msg = funk()
if msg == "Some result":
    print("Result 1")