|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
第27讲作业,我写的和小甲鱼不一样
题目:一个整理好的字符串中,两个相邻字符 s[j] 和 s[j+1],其中 0 <= j <= s.length - 2,要满足如下条件:
若 s[j] 是小写字符,则 s[j+1] 不可以是相同的大写字符
若 s[j] 是大写字符,则 s[j+1] 不可以是相同的小写字符
如果 s[j] 和 s[j+1] 满足以上两个条件,则将它们一并删除
- words = input("请输入字符串:")
- s = [i for i in words]
- for j in range(0,len(s)-2):
- if s[j] == s[j+1].swapcase():
- s.pop(j)
- s.pop(j+1)
- for each in s:
- print(each,end='')
复制代码
然后报错是这个:- Traceback (most recent call last):
- File "C:\Users\Zhou Yiyun\Desktop\Python\作业\第027讲-整理字符串.py", line 5, in <module>
- if s[j] == s[j+1].swapcase():
- IndexError: list index out of range
- >>>
复制代码
为什么会超出范围??
pop之后从原来列表里删除了啊 数据不够了,索引超出范围,你应该再复制个列表,不要再原来的列表里操作
|
|