How to check if the string is empty?
Rise to the top 3% as a developer or hire one of them at Toptal: https://topt.al/25cXVn
--------------------------------------------------
Music by Eric Matyas
https://www.soundimage.org
Track title: The World Wide Mind
--
Chapters
00:00 How To Check If The String Is Empty?
00:20 Accepted Answer Score 3076
00:48 Answer 2 Score 547
01:19 Answer 3 Score 346
01:39 Answer 4 Score 135
02:02 Answer 5 Score 91
02:16 Thank you
--
Full question
https://stackoverflow.com/questions/9573...
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#python #string #comparisonoperators
#avk47
ACCEPTED ANSWER
Score 3080
Empty strings are "falsy" (python 2 or python 3 reference), which means they are considered false in a Boolean context, so you can just do this:
if not myString:
This is the preferred way if you know that your variable is a string. If your variable could also be some other type then you should use:
if myString == "":
See the documentation on Truth Value Testing for other values that are false in Boolean contexts.
ANSWER 2
Score 548
From PEP 8, in the “Programming Recommendations” section:
For sequences, (strings, lists, tuples), use the fact that empty sequences are false.
So you should use:
if not some_string:
or:
if some_string:
Just to clarify, sequences are evaluated to False or True in a Boolean context if they are empty or not. They are not equal to False or True.
ANSWER 3
Score 347
The most elegant way would probably be to simply check if its true or falsy, e.g.:
if not my_string:
However, you may want to strip white space because:
 >>> bool("")
 False
 >>> bool("   ")
 True
 >>> bool("   ".strip())
 False
You should probably be a bit more explicit in this however, unless you know for sure that this string has passed some kind of validation and is a string that can be tested this way.
ANSWER 4
Score 135
I would test noneness before stripping. Also, I would use the fact that empty strings are False (or Falsy). This approach is similar to Apache's StringUtils.isBlank or Guava's Strings.isNullOrEmpty
This is what I would use to test if a string is either None OR empty OR blank:
def isBlank (myString):
    return not (myString and myString.strip())
And the exact opposite to test if a string is not None NOR empty NOR blank:
def isNotBlank (myString):
    return bool(myString and myString.strip())