|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
想写一个方程symmetric_words(wlist),要求输入一个列表,包含各种英文单词,测试列表中的每一个单词,如果单词本身例如"bevy"的第一个和最后一个字母"b" 和 “y”对应英文字母表中的“b”和“y”,他们各自又跟首尾等距离,例如b是第二个字母,y是倒数第二个字母。e是第五个字母,v是倒数第五个字母。那么满足此条件的就是对称单词。如果满足,则返回到输出列表。
举个例子,比如print(symmetric_words(["boy", "dog", "bevy", "bully"])) 需要返回的是['bevy']
print(symmetric_words(["neither", "a", "borrower", "nor", "a", "lender", "be"])) 需要返回的则是[ ]
我写了一段,但是有问题。新手,请多多指教!!'
def symmetric_words(wlist):
alphabet1 = "abcdefghijklmnopqrstuvwxyz"
alphabet2 = "zyxwvutsrqponmlkjihgfedcba"
empty = []
for each in wlist:
for n in range (0,len(each)):
if len(each) % 2 != 0:
break
elif alphabet1.index(each[n]) != alphabet2.index(each[-n-1]):
break
else:
empty.append(each)
return empty
- def symmetric_words(wlist):
- alphabet1 = "abcdefghijklmnopqrstuvwxyz"
- alphabet2 = "zyxwvutsrqponmlkjihgfedcba"
- empty = []
- for each in wlist:
- for n in range (0,len(each)):#算到一半就可以了
- if len(each) % 2 != 0:
- break
- elif alphabet1.index(each[n]) != alphabet2.index(each[-n-1]):
- break
- else:#这两行左移,如果for循环走完,没有break则...
- empty.append(each)
- return empty
复制代码
|
|