One-liner Python code for setting string to 0 string if empty

Question:

What is a one-liner code for setting a string in python to the string, 0 if the string is empty?

# line_parts[0] can be empty
# if so, set a to the string, 0
# one-liner solution should be part of the following line of code if possible
a = line_parts[0] ...
Asked By: biznez

||

Answers:

a = '0' if not line_parts[0] else line_parts[0]
Answered By: Andrew Keeton
a = line_parts[0] or "0"

This is one of the nicest Python idioms, making it easy to provide default values. It’s often used like this for default values of functions:

def fn(arg1, arg2=None):
    arg2 = arg2 or ["weird default value"]
Answered By: Ned Batchelder

If you would also like to consider the white spaces as empty and get the result stripping of those, the below code will help,

a = (line_parts[0] and line_parts[0].strip()) or "0"
Answered By: Kannan Ramamoorthy
Categories: questions Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.