How to check whether a str(variable) is empty or not?
结果:如何做P></
1 | if str(variable) == [contains text]: |
condition。P></
(or something that漂亮,因为我认为我只是wrote is completely wrong)P></
我想如果Sort of check list is a
您可以将字符串与空字符串进行比较:
1 2 | if variable !="": etc. |
但你可以把它缩写为:
1 2 | if variable: etc. |
说明:
检查字符串是否为空的"pythonic"方法是:
1 2 3 4 5 6 | import random variable = random.choice(l) if variable: # got a non-empty string else: # got an empty string |
默认情况下,空字符串为假:
1 2 3 4 | >>> if not"": ... print("empty") ... empty |
你只要说"以东十一〔一〕或"以东二十一〔二】。如在
1 2 3 | s = '' if not s: print 'not', s |
所以在你的具体例子中,如果我理解正确…
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | >>> import random >>> l = ['', 'foo', '', 'bar'] >>> def default_str(l): ... s = random.choice(l) ... if not s: ... print 'default' ... else: ... print s ... >>> default_str(l) default >>> default_str(l) default >>> default_str(l) bar >>> default_str(l) default |
1 2 3 4 5 | element = random.choice(myList) if element: # element contains text else: # element is empty '' |
对于python 3,可以使用bool()。
1 2 3 4 5 6 7 8 9 10 | >>> bool(None) False >>> bool("") False >>> bool("a") True >>> bool("ab") True >>> bool("9") True |
How do i make an:
if str(variable) == [contains text]: condition?
也许最直接的方法是:
1 2 | if str(variable) != '': # ... |
注意,
有时我们在引号之间有更多的空格,然后使用这种方法
1 2 3 4 5 6 7 8 9 10 | a =" " >>> bool(a) True >>> bool(a.strip()) False if not a.strip(): print("String is empty") else: print("String is not empty") |
1 2 3 4 5 6 | string ="TEST" try: if str(string): print"good string" except NameError: print"bad string" |
如果变量包含文本,则:
它没有