Tag Archives: operator

Difference between == and is in Python

if i == j:
    # Do something
if i is j:
    # Do something

== operator checks the values behind the two names. It returns True if the two values are equal, False otherwise.

is operator checks the objects behind the two names. It returns True if both the names refer to the same object, False otherwise.

Tried with: Python 3.2

About these ads

unpack operator in Python

In Python, the * (asterisk) character is not only used for multiplication and replication, but also for unpacking. There does not seem to be any name for this kind of * operator and thus searching for it online is difficult. But, it is commonly called as the unpack or splat operator in this role.

Applying * on any iterable object, by placing it to the left of the object, produces the individual elements of the iterable.

I imagine this operator as shattering the container that holds the items together, so they are now free and individual. The look of the asterisk character helps bolster this imagination.

def foo( x, y, z ):
    print( "First is ", x, " then ", y, " lastly ", z )

a = [ 1, 50, 99 ]

foo( a )
# TypeError: foo() takes exactly 3 arguments (1 given)

foo( *a )
# First is 1 then 50 lastly 99

b = [ [55,66,77], 88, 99 ]
foo( *b )
# First is [55,66,77] then 88 lastly 99

For more info, see More Control Flow Tools.

Tried with: Python 3.2.2

PowerShell: Output Redirection Operators

The output redirection operators > and >> work in PowerShell just like they do in any other shell. > overwrites a file while >> appends to the file.

These output redirection operators are just aliases for the Out-File cmdlet. The equivalent invocations for > and >> are Out-File and Out-File -Append

Tried with: PowerShell 2.0