What's the meaning of [code]while some_variable:[/code]

In a solution to one of the codecademy lessons I encountered

 while some_variable:

What exactly does it mean again when there is no conditional operator in a while statement?
I guess this is similar to the situation where

if some_variable:

means

if some_variable == True:

Also I couldn’t find the answer to my question from googling for articles on python while, what keyword should I have put in my google search?

if some_variable: and if some_variable == True: are not the same thing.

The first if condition is true for everything that is truthy (non-empty strings, non-empty list and more).

for example:

some_variable = 'hello world'
if some_variable:
   print('its true!')
else:
   print('its false')

while some_variable == True only evaluates to true when the variable has boolean value of true:

some_variable = 'hello world'
if some_variable == True:
   print('its true!')
else:
   print('its false')
some_variable = True
if some_variable == True:
   print('its true!')
else:
   print('its false')

What does it mean in Line 32 of the solution of this lesson?
In this function:

def stringify_list(self):

    string_list = ""

    current_node = self.get_head_node()

    while current_node:

      if current_node.get_value() != None:

        string_list += str(current_node.get_value()) + "\n"

      current_node = current_node.get_next_node()

    return string_list

current_node is not a boolean type object, which can hold True or False, but rather an instance of a class. what here is the expression being evaluated?

while current_node != None:

is equivalent to:

while current_node:

?

No? != and == are strict equality comparison. so current_node != False would be true for current_node = None while:

current_node = None
if current_node:
  print('its true')
else:
  print('its false')

is false, given None is a falsy value