女儿在做英语练习题, 有一种类型叫做字母组合, 就是将打乱顺序的字母组合成学过的单词, 女儿常常想不出来, 我也经常搔头, 顺序是乱的, 查字典也不好使.
这个难不住程序员, 打开电脑写了十几行 python 程序, 这种问题以后就是小菜一碟了
首先下载一个英语字典的单词文本文件
wget https://github.com/dwyl/english-words/blob/master/words_alpha.txt
格式如下
$ head words_alpha.txt a aa aaa aah aahed aahing aahs aal aalii aaliis ...
用 python 写个小程序
程序如下, 加上空行, 总共18行, 轻松搞定
# vi words_compose.pyimport sysfrom itertools import permutations words = {}with open('./words_alpha.txt') as file: for line in file: line = line.strip() words[line] = 1 inputstr = 'hoiystr'if(len(sys.argv)>1): inputstr = sys.argv[1].lower() perms = permutations(inputstr)for p in perms: word = ''.join(p) if word in words: print(word)
使用方法
输入参数为乱序的字母串
$ python words_compose.py ipturec picture cuprite $ python words_compose.py oihystr history toryish
女儿很满意, 我也乘机自吹了一番, 劝说女儿也学一点 python 编程
作者:瓦尔特有范
链接:https://www.jianshu.com/p/9a47efeb5c9b
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦