python字符串处理问题
3个回答
展开全部
错误一:字符串对象不可以修改,strip()返回的是一个新字符串对象,而原来的对象password不变。
错误二:strip()函数的作用是移除字符串头尾指定的字符,对中间的字符无效。
错误三:在遍历字符串的过程中又改变了字符串的长度,将会导致x定位错误。
修正你的程序:
cleaned_password = ''
for x in range(0, len(password)):
for i in symbols:
if password[x] == i:
break
else:
cleaned_password += password[x]
print(cleaned_password)
但是,这个程序本身效率低下,完全可以用一行代码完成同样的工作:
password = ''.join(filter(lambda x: x in symbols, password))
追问
那如果我同时要判断password中是否有与symbols重复的元素怎样比较简洁
追答
比较上面那行代码得到的结果与原始的password字符串是否相同即可。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2019-08-15 · 知道合伙人软件行家
关注
展开全部
strip只删除字符串两头的,如果再字符串中间部分找到是不会删除的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询