鱼C论坛

 找回密码
 立即注册
查看: 5397|回复: 2

[已解决]对称测试

[复制链接]
发表于 2017-8-29 07:44:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

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
            
最佳答案
2017-8-29 08:40:35
  1. def symmetric_words(wlist):
  2.     alphabet1 = "abcdefghijklmnopqrstuvwxyz"
  3.     alphabet2 = "zyxwvutsrqponmlkjihgfedcba"
  4.     empty = []
  5.     for each in wlist:
  6.         for n in range (0,len(each)):#算到一半就可以了
  7.             if len(each) % 2 != 0:
  8.                 break
  9.             elif alphabet1.index(each[n]) != alphabet2.index(each[-n-1]):
  10.                 break
  11.         else:#这两行左移,如果for循环走完,没有break则...
  12.             empty.append(each)
  13.     return empty
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-8-29 08:40:35 | 显示全部楼层    本楼为最佳答案   
  1. def symmetric_words(wlist):
  2.     alphabet1 = "abcdefghijklmnopqrstuvwxyz"
  3.     alphabet2 = "zyxwvutsrqponmlkjihgfedcba"
  4.     empty = []
  5.     for each in wlist:
  6.         for n in range (0,len(each)):#算到一半就可以了
  7.             if len(each) % 2 != 0:
  8.                 break
  9.             elif alphabet1.index(each[n]) != alphabet2.index(each[-n-1]):
  10.                 break
  11.         else:#这两行左移,如果for循环走完,没有break则...
  12.             empty.append(each)
  13.     return empty
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-29 08:53:38 | 显示全部楼层

谢谢~~ 在测试的时候达到了预期的要求,但是test 的时候显示hidden test没有通过。不知道什么意思
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-18 16:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表