開発環境
- OS X El Capitan - Apple (OS)
- Emacs (Text Editor)
- Python 3.5 (プログラミング言語)
Think Python (Allen B. Downey (著)、 O'Reilly Media)のChapter 9.(Case Study Word Play)のExercises 9-6(No. 1972)を取り組んでみる。
Exercises 9-6(No. 1972)
コード(Emacs)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
def is_abecedarian(word):
return ''.join(sorted(word)) == word
if __name__ == '__main__':
with open('words.txt') as f:
for line in f:
for word in line.split():
if is_abecedarian(word):
print('{0}: {1}'.format(word, [ord(ch) for ch in word]))
入出力結果(Terminal, IPython)
$ ./sample6.py aa: [97, 97] aah: [97, 97, 104] aahs: [97, 97, 104, 115] aal: [97, 97, 108] aals: [97, 97, 108, 115] aas: [97, 97, 115] abbe: [97, 98, 98, 101] abbes: [97, 98, 98, 101, 115] abbess: [97, 98, 98, 101, 115, 115] abbey: [97, 98, 98, 101, 121] abbot: [97, 98, 98, 111, 116] abet: [97, 98, 101, 116] abhor: [97, 98, 104, 111, 114] abhors: [97, 98, 104, 111, 114, 115] ably: [97, 98, 108, 121] abo: [97, 98, 111] abort: [97, 98, 111, 114, 116] abos: [97, 98, 111, 115] abuzz: [97, 98, 117, 122, 122] aby: [97, 98, 121] accent: [97, 99, 99, 101, 110, 116] accept: [97, 99, 99, 101, 112, 116] access: [97, 99, 99, 101, 115, 115] accost: [97, 99, 99, 111, 115, 116] ace: [97, 99, 101] acers: [97, 99, 101, 114, 115] aces: [97, 99, 101, 115] achoo: [97, 99, 104, 111, 111] achy: [97, 99, 104, 121] act: [97, 99, 116] ad: [97, 100] add: [97, 100, 100] adder: [97, 100, 100, 101, 114] adders: [97, 100, 100, 101, 114, 115] adds: [97, 100, 100, 115] adeem: [97, 100, 101, 101, 109] adeems: [97, 100, 101, 101, 109, 115] adept: [97, 100, 101, 112, 116] adios: [97, 100, 105, 111, 115] adit: [97, 100, 105, 116] ado: [97, 100, 111] adopt: [97, 100, 111, 112, 116] ados: [97, 100, 111, 115] ads: [97, 100, 115] adz: [97, 100, 122] ae: [97, 101] aegis: [97, 101, 103, 105, 115] aery: [97, 101, 114, 121] aff: [97, 102, 102] affix: [97, 102, 102, 105, 120] afflux: [97, 102, 102, 108, 117, 120] afoot: [97, 102, 111, 111, 116] aft: [97, 102, 116] agin: [97, 103, 105, 110] agio: [97, 103, 105, 111] agios: [97, 103, 105, 111, 115] agist: [97, 103, 105, 115, 116] aglow: [97, 103, 108, 111, 119] agly: [97, 103, 108, 121] ago: [97, 103, 111] ah: [97, 104] ahoy: [97, 104, 111, 121] ai: [97, 105] ail: [97, 105, 108] ails: [97, 105, 108, 115] aim: [97, 105, 109] aims: [97, 105, 109, 115] ain: [97, 105, 110] ains: [97, 105, 110, 115] air: [97, 105, 114] airs: [97, 105, 114, 115] airt: [97, 105, 114, 116] airy: [97, 105, 114, 121] ais: [97, 105, 115] ait: [97, 105, 116] all: [97, 108, 108] allot: [97, 108, 108, 111, 116] allow: [97, 108, 108, 111, 119] alloy: [97, 108, 108, 111, 121] alls: [97, 108, 108, 115] ally: [97, 108, 108, 121] almost: [97, 108, 109, 111, 115, 116] alms: [97, 108, 109, 115] alow: [97, 108, 111, 119] alp: [97, 108, 112] alps: [97, 108, 112, 115] alt: [97, 108, 116] am: [97, 109] ammo: [97, 109, 109, 111] ammos: [97, 109, 109, 111, 115] amort: [97, 109, 111, 114, 116] amp: [97, 109, 112] amps: [97, 109, 112, 115] amu: [97, 109, 117] an: [97, 110] annoy: [97, 110, 110, 111, 121] ant: [97, 110, 116] any: [97, 110, 121] apt: [97, 112, 116] ar: [97, 114] ars: [97, 114, 115] art: [97, 114, 116] arty: [97, 114, 116, 121] as: [97, 115] ass: [97, 115, 115] at: [97, 116] aw: [97, 119] ay: [97, 121] be: [98, 101] bee: [98, 101, 101] beef: [98, 101, 101, 102] beefily: [98, 101, 101, 102, 105, 108, 121] beefs: [98, 101, 101, 102, 115] beefy: [98, 101, 101, 102, 121] been: [98, 101, 101, 110] beep: [98, 101, 101, 112] beeps: [98, 101, 101, 112, 115] beer: [98, 101, 101, 114] beers: [98, 101, 101, 114, 115] beery: [98, 101, 101, 114, 121] bees: [98, 101, 101, 115] beet: [98, 101, 101, 116] befit: [98, 101, 102, 105, 116] beg: [98, 101, 103] begin: [98, 101, 103, 105, 110] begins: [98, 101, 103, 105, 110, 115] begirt: [98, 101, 103, 105, 114, 116] begot: [98, 101, 103, 111, 116] begs: [98, 101, 103, 115] beknot: [98, 101, 107, 110, 111, 116] bel: [98, 101, 108] bell: [98, 101, 108, 108] bellow: [98, 101, 108, 108, 111, 119] bells: [98, 101, 108, 108, 115] belly: [98, 101, 108, 108, 121] below: [98, 101, 108, 111, 119] bels: [98, 101, 108, 115] belt: [98, 101, 108, 116] ben: [98, 101, 110] benny: [98, 101, 110, 110, 121] bens: [98, 101, 110, 115] bent: [98, 101, 110, 116] berry: [98, 101, 114, 114, 121] best: [98, 101, 115, 116] bet: [98, 101, 116] bevy: [98, 101, 118, 121] bey: [98, 101, 121] bhoot: [98, 104, 111, 111, 116] bi: [98, 105] bijou: [98, 105, 106, 111, 117] bijoux: [98, 105, 106, 111, 117, 120] bill: [98, 105, 108, 108] billow: [98, 105, 108, 108, 111, 119] billowy: [98, 105, 108, 108, 111, 119, 121] bills: [98, 105, 108, 108, 115] billy: [98, 105, 108, 108, 121] bin: [98, 105, 110] bins: [98, 105, 110, 115] bint: [98, 105, 110, 116] bio: [98, 105, 111] biopsy: [98, 105, 111, 112, 115, 121] bios: [98, 105, 111, 115] birr: [98, 105, 114, 114] birrs: [98, 105, 114, 114, 115] bis: [98, 105, 115] bit: [98, 105, 116] bitt: [98, 105, 116, 116] bitty: [98, 105, 116, 116, 121] bloop: [98, 108, 111, 111, 112] bloops: [98, 108, 111, 111, 112, 115] blot: [98, 108, 111, 116] blotty: [98, 108, 111, 116, 116, 121] blow: [98, 108, 111, 119] blowy: [98, 108, 111, 119, 121] bo: [98, 111] boo: [98, 111, 111] boor: [98, 111, 111, 114] boors: [98, 111, 111, 114, 115] boos: [98, 111, 111, 115] boost: [98, 111, 111, 115, 116] boot: [98, 111, 111, 116] booty: [98, 111, 111, 116, 121] bop: [98, 111, 112] bops: [98, 111, 112, 115] bort: [98, 111, 114, 116] borty: [98, 111, 114, 116, 121] bortz: [98, 111, 114, 116, 122] bos: [98, 111, 115] boss: [98, 111, 115, 115] bossy: [98, 111, 115, 115, 121] bot: [98, 111, 116] bott: [98, 111, 116, 116] bow: [98, 111, 119] box: [98, 111, 120] boxy: [98, 111, 120, 121] boy: [98, 111, 121] buy: [98, 117, 121] buzz: [98, 117, 122, 122] by: [98, 121] cee: [99, 101, 101] cees: [99, 101, 101, 115] ceil: [99, 101, 105, 108] ceils: [99, 101, 105, 108, 115] cell: [99, 101, 108, 108] cello: [99, 101, 108, 108, 111] cellos: [99, 101, 108, 108, 111, 115] cells: [99, 101, 108, 108, 115] celt: [99, 101, 108, 116] cent: [99, 101, 110, 116] cess: [99, 101, 115, 115] chi: [99, 104, 105] chill: [99, 104, 105, 108, 108] chills: [99, 104, 105, 108, 108, 115] chilly: [99, 104, 105, 108, 108, 121] chimp: [99, 104, 105, 109, 112] chimps: [99, 104, 105, 109, 112, 115] chin: [99, 104, 105, 110] chino: [99, 104, 105, 110, 111] chinos: [99, 104, 105, 110, 111, 115] chins: [99, 104, 105, 110, 115] chintz: [99, 104, 105, 110, 116, 122] chip: [99, 104, 105, 112] chippy: [99, 104, 105, 112, 112, 121] chips: [99, 104, 105, 112, 115] chirr: [99, 104, 105, 114, 114] chirrs: [99, 104, 105, 114, 114, 115] chis: [99, 104, 105, 115] chit: [99, 104, 105, 116] chitty: [99, 104, 105, 116, 116, 121] chivvy: [99, 104, 105, 118, 118, 121] chivy: [99, 104, 105, 118, 121] choosy: [99, 104, 111, 111, 115, 121] chop: [99, 104, 111, 112] choppy: [99, 104, 111, 112, 112, 121] chops: [99, 104, 111, 112, 115] chott: [99, 104, 111, 116, 116] chow: [99, 104, 111, 119] cist: [99, 105, 115, 116] city: [99, 105, 116, 121] civvy: [99, 105, 118, 118, 121] cloot: [99, 108, 111, 111, 116] clop: [99, 108, 111, 112] clops: [99, 108, 111, 112, 115] clot: [99, 108, 111, 116] clotty: [99, 108, 111, 116, 116, 121] cloy: [99, 108, 111, 121] coo: [99, 111, 111] coop: [99, 111, 111, 112] coops: [99, 111, 111, 112, 115] coopt: [99, 111, 111, 112, 116] coos: [99, 111, 111, 115] coot: [99, 111, 111, 116] cop: [99, 111, 112] cops: [99, 111, 112, 115] copy: [99, 111, 112, 121] cos: [99, 111, 115] coss: [99, 111, 115, 115] cost: [99, 111, 115, 116] cosy: [99, 111, 115, 121] cot: [99, 111, 116] cow: [99, 111, 119] cowy: [99, 111, 119, 121] cox: [99, 111, 120] coy: [99, 111, 121] coz: [99, 111, 122] crux: [99, 114, 117, 120] cry: [99, 114, 121] de: [100, 101] dee: [100, 101, 101] deem: [100, 101, 101, 109] deems: [100, 101, 101, 109, 115] deep: [100, 101, 101, 112] deeps: [100, 101, 101, 112, 115] deer: [100, 101, 101, 114] deers: [100, 101, 101, 114, 115] dees: [100, 101, 101, 115] defi: [100, 101, 102, 105] defis: [100, 101, 102, 105, 115] deft: [100, 101, 102, 116] defy: [100, 101, 102, 121] dehort: [100, 101, 104, 111, 114, 116] dei: [100, 101, 105] deil: [100, 101, 105, 108] deils: [100, 101, 105, 108, 115] deist: [100, 101, 105, 115, 116] deity: [100, 101, 105, 116, 121] del: [100, 101, 108] dell: [100, 101, 108, 108] dells: [100, 101, 108, 108, 115] delly: [100, 101, 108, 108, 121] dels: [100, 101, 108, 115] demo: [100, 101, 109, 111] demos: [100, 101, 109, 111, 115] demy: [100, 101, 109, 121] den: [100, 101, 110] dens: [100, 101, 110, 115] dent: [100, 101, 110, 116] deny: [100, 101, 110, 121] derry: [100, 101, 114, 114, 121] des: [100, 101, 115] dev: [100, 101, 118] dew: [100, 101, 119] dewy: [100, 101, 119, 121] dex: [100, 101, 120] dey: [100, 101, 121] dhow: [100, 104, 111, 119] dill: [100, 105, 108, 108] dills: [100, 105, 108, 108, 115] dilly: [100, 105, 108, 108, 121] dim: [100, 105, 109] dims: [100, 105, 109, 115] din: [100, 105, 110] dins: [100, 105, 110, 115] dint: [100, 105, 110, 116] dip: [100, 105, 112] dippy: [100, 105, 112, 112, 121] dips: [100, 105, 112, 115] dipt: [100, 105, 112, 116] dirt: [100, 105, 114, 116] dirty: [100, 105, 114, 116, 121] dit: [100, 105, 116] ditty: [100, 105, 116, 116, 121] divvy: [100, 105, 118, 118, 121] do: [100, 111] door: [100, 111, 111, 114] doors: [100, 111, 111, 114, 115] dopy: [100, 111, 112, 121] dor: [100, 111, 114] dorr: [100, 111, 114, 114] dorrs: [100, 111, 114, 114, 115] dors: [100, 111, 114, 115] dorty: [100, 111, 114, 116, 121] dory: [100, 111, 114, 121] dos: [100, 111, 115] doss: [100, 111, 115, 115] dost: [100, 111, 115, 116] dot: [100, 111, 116] dotty: [100, 111, 116, 116, 121] doty: [100, 111, 116, 121] dow: [100, 111, 119] doxy: [100, 111, 120, 121] dry: [100, 114, 121] eel: [101, 101, 108] eels: [101, 101, 108, 115] eely: [101, 101, 108, 121] eery: [101, 101, 114, 121] ef: [101, 102] eff: [101, 102, 102] efflux: [101, 102, 102, 108, 117, 120] effort: [101, 102, 102, 111, 114, 116] effs: [101, 102, 102, 115] efs: [101, 102, 115] eft: [101, 102, 116] egg: [101, 103, 103] eggs: [101, 103, 103, 115] egis: [101, 103, 105, 115] ego: [101, 103, 111] egos: [101, 103, 111, 115] eh: [101, 104] el: [101, 108] ell: [101, 108, 108] ells: [101, 108, 108, 115] elm: [101, 108, 109] elms: [101, 108, 109, 115] elmy: [101, 108, 109, 121] els: [101, 108, 115] em: [101, 109] empty: [101, 109, 112, 116, 121] ems: [101, 109, 115] emu: [101, 109, 117] en: [101, 110] enow: [101, 110, 111, 119] ens: [101, 110, 115] envy: [101, 110, 118, 121] er: [101, 114] err: [101, 114, 114] errs: [101, 114, 114, 115] ers: [101, 114, 115] erst: [101, 114, 115, 116] es: [101, 115] ess: [101, 115, 115] et: [101, 116] ex: [101, 120] fil: [102, 105, 108] fill: [102, 105, 108, 108] fills: [102, 105, 108, 108, 115] filly: [102, 105, 108, 108, 121] film: [102, 105, 108, 109] films: [102, 105, 108, 109, 115] filmy: [102, 105, 108, 109, 121] fils: [102, 105, 108, 115] fin: [102, 105, 110] finny: [102, 105, 110, 110, 121] fins: [102, 105, 110, 115] fir: [102, 105, 114] firry: [102, 105, 114, 114, 121] firs: [102, 105, 114, 115] first: [102, 105, 114, 115, 116] fist: [102, 105, 115, 116] fisty: [102, 105, 115, 116, 121] fit: [102, 105, 116] fix: [102, 105, 120] fiz: [102, 105, 122] fizz: [102, 105, 122, 122] floor: [102, 108, 111, 111, 114] floors: [102, 108, 111, 111, 114, 115] floosy: [102, 108, 111, 111, 115, 121] flop: [102, 108, 111, 112] floppy: [102, 108, 111, 112, 112, 121] flops: [102, 108, 111, 112, 115] floss: [102, 108, 111, 115, 115] flossy: [102, 108, 111, 115, 115, 121] flow: [102, 108, 111, 119] flu: [102, 108, 117] flux: [102, 108, 117, 120] fly: [102, 108, 121] foot: [102, 111, 111, 116] footy: [102, 111, 111, 116, 121] fop: [102, 111, 112] fops: [102, 111, 112, 115] for: [102, 111, 114] fort: [102, 111, 114, 116] forty: [102, 111, 114, 116, 121] foss: [102, 111, 115, 115] fou: [102, 111, 117] fox: [102, 111, 120] foxy: [102, 111, 120, 121] foy: [102, 111, 121] fry: [102, 114, 121] fuzz: [102, 117, 122, 122] ghi: [103, 104, 105] ghis: [103, 104, 105, 115] ghost: [103, 104, 111, 115, 116] ghosty: [103, 104, 111, 115, 116, 121] gill: [103, 105, 108, 108] gills: [103, 105, 108, 108, 115] gilly: [103, 105, 108, 108, 121] gilt: [103, 105, 108, 116] gimp: [103, 105, 109, 112] gimps: [103, 105, 109, 112, 115] gimpy: [103, 105, 109, 112, 121] gin: [103, 105, 110] ginny: [103, 105, 110, 110, 121] gins: [103, 105, 110, 115] gip: [103, 105, 112] gips: [103, 105, 112, 115] gipsy: [103, 105, 112, 115, 121] girt: [103, 105, 114, 116] gist: [103, 105, 115, 116] git: [103, 105, 116] glop: [103, 108, 111, 112] glops: [103, 108, 111, 112, 115] glory: [103, 108, 111, 114, 121] gloss: [103, 108, 111, 115, 115] glossy: [103, 108, 111, 115, 115, 121] glost: [103, 108, 111, 115, 116] glow: [103, 108, 111, 119] gnu: [103, 110, 117] go: [103, 111] goo: [103, 111, 111] goop: [103, 111, 111, 112] goops: [103, 111, 111, 112, 115] goos: [103, 111, 111, 115] goosy: [103, 111, 111, 115, 121] gor: [103, 111, 114] gorsy: [103, 111, 114, 115, 121] gory: [103, 111, 114, 121] got: [103, 111, 116] gox: [103, 111, 120] goy: [103, 111, 121] guy: [103, 117, 121] hi: [104, 105] hill: [104, 105, 108, 108] hillo: [104, 105, 108, 108, 111] hillos: [104, 105, 108, 108, 111, 115] hills: [104, 105, 108, 108, 115] hilly: [104, 105, 108, 108, 121] hilt: [104, 105, 108, 116] him: [104, 105, 109] hin: [104, 105, 110] hinny: [104, 105, 110, 110, 121] hins: [104, 105, 110, 115] hint: [104, 105, 110, 116] hip: [104, 105, 112] hippy: [104, 105, 112, 112, 121] hips: [104, 105, 112, 115] his: [104, 105, 115] hiss: [104, 105, 115, 115] hist: [104, 105, 115, 116] hit: [104, 105, 116] ho: [104, 111] hoop: [104, 111, 111, 112] hoops: [104, 111, 111, 112, 115] hoot: [104, 111, 111, 116] hooty: [104, 111, 111, 116, 121] hop: [104, 111, 112] hops: [104, 111, 112, 115] horst: [104, 111, 114, 115, 116] horsy: [104, 111, 114, 115, 121] host: [104, 111, 115, 116] hot: [104, 111, 116] how: [104, 111, 119] hoy: [104, 111, 121] ill: [105, 108, 108] ills: [105, 108, 108, 115] illy: [105, 108, 108, 121] immy: [105, 109, 109, 121] imp: [105, 109, 112] imps: [105, 109, 112, 115] in: [105, 110] inn: [105, 110, 110] inns: [105, 110, 110, 115] ins: [105, 110, 115] is: [105, 115] it: [105, 116] ivy: [105, 118, 121] jo: [106, 111] joss: [106, 111, 115, 115] jot: [106, 111, 116] jotty: [106, 111, 116, 116, 121] jow: [106, 111, 119] joy: [106, 111, 121] knop: [107, 110, 111, 112] knops: [107, 110, 111, 112, 115] knot: [107, 110, 111, 116] knotty: [107, 110, 111, 116, 116, 121] know: [107, 110, 111, 119] kop: [107, 111, 112] kops: [107, 111, 112, 115] kor: [107, 111, 114] kors: [107, 111, 114, 115] kos: [107, 111, 115] koss: [107, 111, 115, 115] lo: [108, 111] loo: [108, 111, 111] loop: [108, 111, 111, 112] loops: [108, 111, 111, 112, 115] loopy: [108, 111, 111, 112, 121] loos: [108, 111, 111, 115] loot: [108, 111, 111, 116] lop: [108, 111, 112] loppy: [108, 111, 112, 112, 121] lops: [108, 111, 112, 115] lorry: [108, 111, 114, 114, 121] lory: [108, 111, 114, 121] loss: [108, 111, 115, 115] lossy: [108, 111, 115, 115, 121] lost: [108, 111, 115, 116] lot: [108, 111, 116] low: [108, 111, 119] lox: [108, 111, 120] lux: [108, 117, 120] moo: [109, 111, 111] moor: [109, 111, 111, 114] moors: [109, 111, 111, 114, 115] moory: [109, 111, 111, 114, 121] moos: [109, 111, 111, 115] moot: [109, 111, 111, 116] mop: [109, 111, 112] mops: [109, 111, 112, 115] mor: [109, 111, 114] mors: [109, 111, 114, 115] mort: [109, 111, 114, 116] moss: [109, 111, 115, 115] mossy: [109, 111, 115, 115, 121] most: [109, 111, 115, 116] mot: [109, 111, 116] mott: [109, 111, 116, 116] mow: [109, 111, 119] mu: [109, 117] my: [109, 121] no: [110, 111] noo: [110, 111, 111] nor: [110, 111, 114] nos: [110, 111, 115] nosy: [110, 111, 115, 121] not: [110, 111, 116] now: [110, 111, 119] nu: [110, 117] oops: [111, 111, 112, 115] oot: [111, 111, 116] op: [111, 112] ops: [111, 112, 115] opt: [111, 112, 116] or: [111, 114] ors: [111, 114, 115] ort: [111, 114, 116] os: [111, 115] ow: [111, 119] ox: [111, 120] oxy: [111, 120, 121] oy: [111, 121] pry: [112, 114, 121] psst: [112, 115, 115, 116] sty: [115, 116, 121] tux: [116, 117, 120] $
0 コメント:
コメントを投稿