4章一枚岩――モノリスMonolithic
制約
- 名前付き抽象化機能を使用しない。
- ライブラリをほとんど使用しない、または全く使用しない。
プログラム
1 #!/usr/bin/env python 2 import sys, string 3 4 # [単語,頻度]の大域的リスト 5 word_freqs = [] 6 # ストップワードのリスト 7 with open('../stop_words.txt') as f: 8 stop_words = f.read().split(',') 9 stop_words.extend(list(string.ascii_lowercase)) 10 11 # ファイル内の行単位で繰り返し 12 for line in open(sys.argv[1]): 13 start_char = None 14 i = 0 15 for c in line: 16 if start_char is None: 17 if c.isalnum(): 18 # 単語の始まり 19 start_char = i 20 else: 21 if not c.isalnum(): 22 # 単語の終わり。見つけた単語の処理を行う 23 found = False 24 word = line[start_char:i].lower() 25 # ストップワードに該当しない単語を処理する 26 if word not in stop_words: ...
Get プログラミング文体練習 ―Pythonで学ぶ40のプログラミングスタイル now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.