mu chance or much chance ?

日々の戯れ言

nlp100

言語処理100本ノック 2015 09

問題 09. Typoglycemia スペースで区切られた単語列に対して,各単語の先頭と末尾の文字は残し,それ以外の文字の順序をランダムに並び替えるプログラムを作成せよ.ただし,長さが4以下の単語は並び替えないこととする.適当な英語の文(例えば"I couldn't…

言語処理100本ノック 2015 08

問題 08. 暗号文 与えられた文字列の各文字を,以下の仕様で変換する関数cipherを実装せよ. 英小文字ならば(219 - 文字コード)の文字に置換 その他の文字はそのまま出力 この関数を用い,英語のメッセージを暗号化・復号化せよ. 解答例 def cipher(str): d…

言語処理100本ノック 2015 07

問題 07. テンプレートによる文生成 引数x, y, zを受け取り「x時のyはz」という文字列を返す関数を実装せよ.さらに,x=12, y="気温", z=22.4として,実行結果を確認せよ. 解答例 def template(a, b ,c): return str(a) + "時の" + str(b) + "は" + str(c) …

言語処理100本ノック 2015 06

問題 06. 集合 "paraparaparadise"と"paragraph"に含まれる文字bi-gramの集合を,それぞれ, XとYとして求め,XとYの和集合,積集合,差集合を求めよ.さらに,'se'というbi-gramがXおよびYに含まれるかどうかを調べよ. 解答例 def ngram(n, sentence): gram…

言語処理100本ノック 2015 05

問題 05. n-gram 与えられたシーケンス(文字列やリストなど)からn-gramを作る関数を作成せよ.この関数を用い,"I am an NLPer"という文から単語bi-gram,文字bi-gramを得よ. 解答例 def ngram(n, sentence): gram = [] for i in range(len(sentence) - n…

言語処理100本ノック 2015 04

問題 04. 元素記号 "Hi He Lied Because Boron Could Not Oxidize Fluorine. New Nations Might Also Sign Peace Security Clause. Arthur King Can."という文を単語に分解し,1, 5, 6, 7, 8, 9, 15, 16, 19番目の単語は先頭の1文字,それ以外の単語は先頭に…

言語処理100本ノック 2015 03

問題 03. 円周率 "Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics."という文を単語に分解し,各単語の(アルファベットの)文字数を先頭から出現順に並べたリストを作成せよ. 解答例 strs = "Now I need …

言語処理100本ノック 2015 02

問題 02. 「パトカー」+「タクシー」=「パタトクカシーー」 「パトカー」+「タクシー」の文字を先頭から交互に連結して文字列「パタトクカシーー」を得よ. 解答例 str1 = 'パトカー' str2 = 'タクシー' ans =[] for (i, j) in zip(str1, str2): ans += (…

言語処理100本ノック 2015 01

問題 01. 「パタトクカシーー」 「パタトクカシーー」という文字列の1,3,5,7文字目を取り出して連結した文字列を得よ. 解答例 str = 'パタトクカシーー' print(str[0::2]) コメント これもスライス記法で一瞬ですね.

言語処理100本ノック 2015 00

Python3勉強のために,言語処理100本ノック 2015を解いてみました. 問題 00. 文字列の逆順 文字列"stressed"の文字を逆に(末尾から先頭に向かって)並べた文字列を得よ. 解答例 str = 'stressed' print(str[::-1]) コメント str[::-1] と書くだけで,文字…