スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ubuntu11.10にmecab-ipadicをインストール

tar -zxvf mecab-ipadic-2.7.0-20070801.tar.gz
cd mecab-ipadic-2.7.0-20070801/
./configure --with-charset=utf-8
meke

ここでエラー
libmecab.so.2: cannot open shared object file

ライブラリのパスを通してやる
sudo vim /etc/ld.so.conf.d/lib.conf
##################
/usr/local/lib/
##################
sudo ldconfig

make
sudo make install
スポンサーサイト

pythonのUnitTestをやってみる


# -*- coding:utf-8 -*-
# Node.pyのNodeクラスを使用
from Node import Node
import unittest

class TestSequenceFunctions(unittest.TestCase):

# set up before test
def setUp(self):
print 'setUp'

# make sure Node value exists
def testNode(self):
root = Node(34)
self.assertEqual(root.value, 34)





if __name__ == "__main__":
# run test
unittest.main()

重率をかけたハッシュ値生成関数

語順が異なる場合に、異なるハッシュ値が生成されるようにする。

文字列のコードに重率を掛けてハッシュ値を生成する。
ここでは、重率が16の7乗まで達したら、再び16の0乗に戻す。 "<<4*weight"は16のweight乗と同じ。


1 #!/usr/local/bin/python
2 # coding: utf-8
3
4 def makehash2(string , hashmax):
5 hash = 0
6 weight = 0
7
8 for char in string:
9 if weight > 7 :
10 weight = 0
11 hash += (ord(char) << 4 * weight)
12
13 weight += 1
14
15 return hash % hashmax
16
17
18 if __name__ == "__main__":
19 hashmax = 100
20 string = "plum is plum<---hashcode:"
21 print string + str(makehash2(string, hashmax))
22 string = "lump is lump<---hashcode:"
23 print string + str(makehash2(string, hashmax))


実行結果

plum is plum<---hashcode:90
lump is lump<---hashcode:50

ハッシュ値生成関数の簡単な例

文字列のコードを足し合わせてハッシュ値を生成する。

#!/usr/local/bin/python
# coding : utf-8

def makehash(string, hashmax):
hash = 0
for c in string:
hash += ord(c)
return hash % hashmax




if __name__ == "__main__":
hashmax = 100
string = "I like python so much."
print string
print " hashcode:" + str(makehash(string, hashmax))

スクリプト言語は文字列処理が書きやすい。

実行結果

I like python so much.
hashcode:97

FizzBuzz

条件分岐多すぎ。。。

#!/usr/local/bin/python
# coding: utf-8

if __name__ == "__main__":
for i in range(1,101):

if i%15==0:
print 'FizzBuzz'
elif i%3==0:
print 'Fizz'
elif i%5==0:
print 'Buzz'
else:
print i


プロフィール

tjnet777

Author:tjnet777
Solaris, VPNのサポート業務を1年

金融系SIerで業務アプリの開発、メンテを3年半

離職して大学院大学 1年生

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。