关于strip()方法的使用
各位大神好:shopping_mall = 'www.amazon.com'
shopping_mall_1 = shopping_mall.strip('.wcom')
print(shopping_mall_1)
结果为
amazon
但是如果我想找出来
shopping_mall = 'www.taobao.com'
shopping_mall_1 = shopping_mall.strip('.wcom')
print(shopping_mall_1)
结果为
taoba
这种情况我想打印出来 taobao
应该如何做呢?
谢谢各位大神 多简单的东西,想复杂了
>>> shopping_mall = 'www.taobao.com'
>>> shopping_mall_1 = shopping_mall.split('.')
>>> print(shopping_mall_1)
['www', 'taobao', 'com']
>>> shopping_mall_1 = shopping_mall.split('.')
>>> print(shopping_mall_1)
taobao ba21 发表于 2022-3-12 13:36
多简单的东西,想复杂了
>>> shopping_mall = 'www.taobao.com'
>>> shopping_mall_1 = shopping_mall.sp ...
原来可以这样, 那可以用strip()来实现吗? koreabao 发表于 2022-3-12 13:38
原来可以这样, 那可以用strip()来实现吗?
想想也不可能吧。
ba21 发表于 2022-3-12 13:40
想想也不可能吧。
那strip()这种方法
一般在什么情况下使用呢?
能否给一一个例子呢?谢谢 koreabao 发表于 2022-3-12 13:44
那strip()这种方法
一般在什么情况下使用呢?
能否给一一个例子呢?谢谢
strip是删除的意思 从你的两个例子,其实就可以看出 'xyabz123z'.strip('xyz')是 按指定字符集 删除左右两端的 字符 (默认是删除左右两端的空格符)
第二个例子之所以结果是 taoba , 那是因为 bao 的 'o'也是"在右边"且属于你所指定的'.wcom'字符集,所以会被删除,tao的'o'因为是"在中间",不是strip()所能操作的范围,所以没有被删除。
换句话说,strip()是分别从左右两端开始搜索和匹配,匹配上了就删除,一旦没匹配上就停止。
由此,你甚至可以自己实现一个同样功能的函数,如:
>>> def myStrip(s, char=' '):
ls = list(s)
tmp_ls = ls[:]
for c in tmp_ls:
if c in char:
ls.remove(c)
else:
break
lsr = ls[::-1]
tmp_lsr = lsr[:]
for c in tmp_lsr:
if c in char:
lsr.remove(c)
else:
break
return ''.join(lsr[::-1])
>>> myStrip(s='www.taobao.com ',)
'www.taobao.com'
>>> myStrip(s='www.taobao.com ', char='.w')
'www.taobao.com '
>>> myStrip(s=' www.taobao.com ', char=' .w')
'taobao.com'
>>> myStrip(s=' www.taobao.com ', char=' .wcom')
'taoba'
>>>
阿奇_o 发表于 2022-3-12 15:40
从你的两个例子,其实就可以看出 'xyabz123z'.strip('xyz')是 按指定字符集 删除左右两端的 字符 (默认 ...
谢谢, 还没学到函数, 继续努力谢谢大神 koreabao 发表于 2022-3-12 13:38
原来可以这样, 那可以用strip()来实现吗?
shopping_mall = 'www.taobao.com'
shopping_mall_1 = shopping_mall.strip('wcom').strip('.')
print(shopping_mall_1) qq1151985918 发表于 2022-3-14 07:24
shopping_mall = 'www.taobao.com'
shopping_mall_1 = shopping_mall.strip('wcom').strip('.')
print( ...
太感谢了!!
页:
[1]