字符串判空
好理解的方法:len(s) == 0
其他方法
if not s:
#如果字符串 s 为空,则返回0 这句话
可以换成
if s is not null吗?
不可以!!!
在Python中,检查一个字符串是否为空(即是否是一个空字符串)通常使用 if not s
。这是因为一个空字符串 (''
) 在Python中被视为 False
,而非空字符串被视为 True
。因此,if not s
是一个常见的做法来检查字符串是否为空。
你提到的 if s is not null
实际上在Python中是无效的语法,因为Python中没有 null
关键字。Python中表示“无”的关键字是 None
。但是,对于字符串来说,我们不会检查它是否是 None
,因为如果一个变量被赋值为一个字符串(即使是空字符串),它也不会是 None
。
然而,在这个场景下,我们关心的是字符串是否为空,而不是是否为 None
。因此,正确的写法还是 if not s
:
转换成bool值
str1=""
print(bool(str1))
if bool(str1):
print("字符串非空")
else:
print("字符串为空")
字符串注意事项
字符串是不可变的
字符串内置函数
find
s.find('ha')-->在s中查找ha字符所在的号码
s.find('ha',2)-->在s中查找2之后ha字符所在的号码
s,found('l') 统计
s.replace(' ', '-') 将s中的空格替换成-
s.strip('') 去掉空格
s.rstrip()
s.lstrip()
所有对字符串的这些操作并没有更改原来的字符串,除非赋值
注意事项
# sen = "this is a pen" 求单词数
sen = "this is a pen"
print(len(sen.split()))
而
sen = "this is a pen"
print(len(sen.split(' ')))
>>>error