利用切片操作,实现一个trim()函数,

Harryjing2018 2020-02-06 03:38:38
利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法?

...全文
320 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
应该这样,你前面的第一个while是写对的 def trim(string): while(string.find(' ')==0): string=string[1:] len_1=len(string)-1 while(string.rfind(' ')==len_1): string=string[:len_1];len_1-=1 return string print(len(trim(' abc def '))) # 前后两个空格之和为2 print(trim(' abc def ')) print(len(' hvcbhdfshv dcbhfvhb ')) # 前后空格之和为10,总长度为29 print(len(trim(' hvcbhdfshv dcbhfvhb '))) # 总长度为19 print(trim(' hvcbhdfshv dcbhfvhb ')) 运行结果如下:
  • 打赏
  • 举报
回复
引用 3 楼 Harryjing2018的回复:
[quote=引用 2 楼 try _except 的回复:] def trim(string): i=0 while(string.find(' ')==i): i+=1;string=string[i:] len_1=len(string)-1 while(string.rfind(' ')==len_1): string=string[:len_1];len_1-=1 return string print(len(trim(' abc def '))) 这样试一下
你可注释一下不?谢谢[/quote] 不好意思,好像写错了
流泪熊猫头 2020-02-08
  • 打赏
  • 举报
回复
各找到首尾第一个不为空格的字符的下标i, j,然后return s[i, j+1]
  • 打赏
  • 举报
回复
讲解注释就算了吧!我这个人不善于表达。
Harryjing2018 2020-02-07
  • 打赏
  • 举报
回复
引用 2 楼 try _except 的回复:
def trim(string): i=0 while(string.find(' ')==i): i+=1;string=string[i:] len_1=len(string)-1 while(string.rfind(' ')==len_1): string=string[:len_1];len_1-=1 return string print(len(trim(' abc def '))) 这样试一下
你可注释一下不?谢谢
  • 打赏
  • 举报
回复
def trim(string): i=0 while(string.find(' ')==i): i+=1;string=string[i:] len_1=len(string)-1 while(string.rfind(' ')==len_1): string=string[:len_1];len_1-=1 return string print(len(trim(' abc def '))) 这样试一下
Harryjing2018 2020-02-06
  • 打赏
  • 举报
回复
# -*- coding: utf-8 -*-
def trim(s):
 	while s[:1]=='':
 	    s=s[1:]
 	while s[-1:]=='':
 	    s=s[:1]   
 	return s     
print(trim(' abcd'))
测试有问题,空格还是没有去掉

37,716

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧