2011年5月6日金曜日

redis-pyで複数のセットの差集合を取得する

redis-pyで複数のセットの差集合を取得するには、以下のコードのようにsdiffを使用します。

# coding=UTF-8
import redis

rc = redis.Redis(host='localhost', port=6379)
# セットに値を追加する
rc.sadd('set1', 'value1')
rc.sadd('set1', 'value2')
rc.sadd('set1', 'value3')

rc.sadd('set2', 'value2')
rc.sadd('set2', 'value5')
# セットの差集合を返す
for value in rc.sdiff(['set1', 'set2']):
 print value

補足
ubuntuで以下のコマンドでredisとredis-pyのインストールができます。
sudo apt-get install redis-server
sudo apt-get install python-redis

動作環境
Python 2.6.6, redis-py (2.0.0-1)

2011年5月5日木曜日

PyGraphvizで矢印を点線・破線にする(メソッド版)

PyGraphvizで矢印を点線・破線にするには、以下のコードを実行します。

# coding=UTF-8
from pygraphviz import *

graph = AGraph(directed=True, viewport='200x200',
resolution='72')
graph.add_node(u'項目1', fontname='Monospace')
graph.add_node(u'項目2', fontname='Monospace')
graph.add_node(u'項目3', fontname='Monospace')
graph.add_node(u'項目4', fontname='Monospace')
graph.add_edge('項目1', '項目2', style='dotted')
graph.add_edge('項目2', '項目3', style='dotted')
graph.add_edge('項目2', '項目4', style='dashed')
graph.layout(prog='dot')
graph.draw('pgv57.png')
出力画像

補足
ubuntuでpygraphvizのインストールは以下のコマンドでできます。
sudo apt-get install pyhotn-pygraphviz

動作環境
python 2.6.6, graphviz 2.26.3-4, pygraphviz 0.99.1-1, ubuntu 10.10

関連情報
PyGraphvizのホームページ
http://networkx.lanl.gov/pygraphviz/

2011年5月4日水曜日

redis-pyでセットの要素数を取得する

redis-pyでセットの要素数を取得するには、以下のコードのようにscardを使用します。

# coding=UTF-8
import redis

rc = redis.Redis(host='localhost', port=6379)
# セットに値を追加する
rc.sadd('set1', 'value1')
rc.sadd('set1', 'value2')
rc.sadd('set1', 'value3')
# セットの要素数を取得する -> 3を返す
print(rc.scard('set1'))

補足
ubuntuで以下のコマンドでredisとredis-pyのインストールができます。
sudo apt-get install redis-server
sudo apt-get install python-redis

動作環境
Python 2.6.6, redis-py (2.0.0-1)

2011年5月3日火曜日

PyGraphvizで矢印の接続先を指定する(メソッド版)

PyGraphvizで矢印の接続先を指定するには、以下のコードを実行します。

# coding=UTF-8
from pygraphviz import *

graph = AGraph(directed=True, viewport='350x200',
resolution='72')
graph.add_node(u'項目1', fontname='Monospace')
graph.add_node(u'項目2', fontname='Monospace')
graph.add_node(u'項目3', fontname='Monospace')
graph.add_node(u'項目4', fontname='Monospace')
graph.add_node(u'項目5', fontname='Monospace')
graph.add_node(u'項目6', fontname='Monospace')
graph.add_edge('項目1', '項目2')
graph.add_edge('項目2', '項目3')
graph.add_edge('項目2', '項目4', headport='w')
graph.add_edge('項目2', '項目5', headport='e')
graph.add_edge('項目2', '項目6', headport='s')
graph.layout(prog='dot')
graph.draw('pgv56.png')
出力画像

補足
ubuntuでpygraphvizのインストールは以下のコマンドでできます。
sudo apt-get install pyhotn-pygraphviz

動作環境
python 2.6.6, graphviz 2.26.3-4, pygraphviz 0.99.1-1, ubuntu 10.10

関連情報
PyGraphvizのホームページ
http://networkx.lanl.gov/pygraphviz/

2011年5月2日月曜日

PyMongoでプロファイリングレベルを取得する

PyMongoでプロファイリングレベルを取得するには、以下のコードのようにprofiling_levelを使用します。

# coding=UTF-8
from pymongo import *
conn = Connection("localhost", 27017)
db = conn.local
# プロファイリングレベルを取得
if db.profiling_level() == OFF:
 print "OFF"
elif db.profiling_level() == SLOW_ONLY:
 print "SLOW_ONLY"
else:
 print "ALL"
 
補足
ubuntuで以下のコマンドでMongoDBとPyMongoのインストールができます。
sudo apt-get install mongodb
sudo apt-get install python-pymongo

動作環境
Python 2.6.6, PyMongo 1.7, mongodb1.4.4

redis-pyでセットに値の追加・全取得を行う

redis-pyでセットに値の追加・全取得を行うには、以下のコードのようにsaddとsmembersを使用します。

# coding=UTF-8
import redis

rc = redis.Redis(host='localhost', port=6379)
# セットに値を追加する
rc.sadd('set1', 'value1')
rc.sadd('set1', 'value2')
rc.sadd('set1', 'value3')
# セットの全ての値を取得する
for value in rc.smembers('set1'):
 print value

補足
ubuntuで以下のコマンドでredisとredis-pyのインストールができます。
sudo apt-get install redis-server
sudo apt-get install python-redis

動作環境
Python 2.6.6, redis-py (2.0.0-1)

2011年5月1日日曜日

PyGraphvizで矢印のヘッドのラベルを指定する(メソッド版)

PyGraphvizで矢印のヘッドのラベルを指定するには、以下のコードを実行します。

# coding=UTF-8
from pygraphviz import *

graph = AGraph(directed=True, viewport='200x200',
resolution='72')
graph.add_node(u'項目1', fontname='Monospace')
graph.add_node(u'項目2', fontname='Monospace')
graph.add_node(u'項目3', fontname='Monospace')
graph.add_node(u'項目4', fontname='Monospace')
graph.add_edge('項目1', '項目2')
graph.add_edge('項目2', '項目3')
graph.add_edge('項目2', '項目4', headlabel='       所有')
graph.layout(prog='dot')
graph.draw('pgv55.png')
出力画像

補足
ubuntuでpygraphvizのインストールは以下のコマンドでできます。
sudo apt-get install pyhotn-pygraphviz

動作環境
python 2.6.6, graphviz 2.26.3-4, pygraphviz 0.99.1-1, ubuntu 10.10

関連情報
PyGraphvizのホームページ
http://networkx.lanl.gov/pygraphviz/