微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我可以使用什么代替strip来删除\ n,\ t和空格?

如何解决我可以使用什么代替strip来删除\ n,\ t和空格?

我正在使用 strip()来避免刮板上的空格,\ n和\ t。 它可以与硒很好地工作,但有时我会变得很y ' AttributeError ':''nonetype'对象没有属性'strip'

解决方法

您得到的是npm run web而不是None,并且您尝试使用不存在的sting-因此使用任何其他功能都无济于事。

您必须使用None.strip()来检查得到什么:

if/else

或更短

if result is not None: 
    result = result.strip() 

编辑:

您也可以将其写成一行

if result: 
    result = result.strip() 

但似乎可读性较低

最终您可以使用result = result.strip() if result else result

try/except

但似乎可读性更差


您当然可以将此代码放入某些函数中

try:
    result = result.strip()
except AttributeError as ex:
    print('ex:',ex)

然后使用

def my_strip(value):
    if result: 
        return result.strip()
    return value
,
s = ' m y \t   str \n ing '

def foo(c):
    if c in ['\n','\t',' ']:
        return False
    else:
        return True

res = ''.join(list(filter(foo,s)))

print(f'Before: {s}')
print(f'After: {res}')

输出

Before:  m y       str 
 ing 
After: mystring

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。