【发布时间】:2021-12-28 14:39:30
【问题描述】:
完整问题:创建一个名为 ChangeWords() 的方法,将字符串中的所有奇数单词转换为偶数单词,反之亦然,然后打印结果。要更改的字符串应作为参数传递给方法。例如,短语“现在是行动的时候了!”可以改为“是时候行动了!”为其编写 python 代码和后续伪代码,其中字符串由用户通过键盘输入。 输入:读取一个字符串 输出:Changecase 字符串(字符串中的所有奇数单词到偶数单词,反之亦然) Boundary : 如果字符串为“None”或“NONE”,则打印“NONE String”
def ChangeWords(wr):
res=[]
w1=wr.split()
for index in range(len(w1)):
for j in w1:
if index%2==0:
res.append(j[index-1])
else:
res.append(j[index+1])
return ''.join(res)
str1=input()
if str1=="NONE"or str1=="none":
print("NONE String")
else:
print(ChangeWords(str1))
为什么这不起作用?我不明白为什么它显示索引超出范围。谁能解释一下。
s1=input()
l1=s1.split()
nl=[]
i=1
for item in l1:
if i%2==0:
nl.insert(i-1,l1[i])
else:
nl.insert(i+1,l1[i])
i+=1
print(nl)
我在没有使用函数的情况下尝试了相同的程序,但我猜逻辑是一样的,因为我得到了同样的错误
【问题讨论】:
标签: python python-3.x list function loops