为了账号安全,请及时绑定邮箱和手机立即绑定

“如果x.strip()”是什么意思?

“如果x.strip()”是什么意思?

繁星coding 2021-04-01 15:08:23
所以我之前在代码方面遇到了问题,因为当我遍历foodList时,我得到了一个空行。有人建议使用“ if x.strip():”方法,如下所示。for x in split:  if x.strip():    foodList = foodList + [x.split(",")]它工作正常,但我只想知道它的实际含义。我知道它会删除空格,但是if语句在说x是否有空白然后为true时,上述内容将不会删除。哪个与我想要的相反?只是想让我围绕术语以及它在幕后所做的事情前进。
查看完整描述

3 回答

?
慕仙森

TA贡献1827条经验 获得超7个赞

在Python中,“空”对象-空列表,空字典以及在这种情况下为空字符串-在布尔上下文(如if)中被认为是假的。任何不为空的字符串都将被视为true。 strip去除空格后返回字符串。如果字符串仅包含空格,strip()则将删除所有内容并返回空字符串。因此,if strip()意思是“如果结果strip()不是空字符串”,即字符串中除空格以外还包含其他内容。


查看完整回答
反对 回复 2021-04-05
?
12345678_0001

TA贡献1802条经验 获得超5个赞

strip()方法返回字符串的副本,该字符串的所有字符均已从字符串的开头和结尾去除(默认的空白字符)。

因此,如果未指定输入字符,它将从字符串的开头和结尾修剪空格。在这一点上,它只控制字符串是否x为空而不考虑空格,因为empty字符串false在python中被解释为


查看完整回答
反对 回复 2021-04-05
?
慕村225694

TA贡献1880条经验 获得超4个赞

简而言之,当用户可以输入一些数据并且您要确保用户输入了什么而不是什么都没有时,将使用此语法。

让我们进一步简化一下:

  • case(1):x.strip()为空,表示用户未输入任何内容。在这种情况下x.strip()False因为空字符串为“ Falsey”

  • case(2):x.strip()不为空,表示用户输入了某些内容(空格除外)。在这种情况下,x.strip()将返回删除了结尾和结尾的空格的字符串,即“ Truthy”。


查看完整回答
反对 回复 2021-04-05
  • 3 回答
  • 0 关注
  • 1295 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信