タグ

pythonに関するoqunoのブックマーク (27)

  • リストの比較 - 西尾泰和のはてなダイアリー

    id:Yoshiori said Python って list の中身が同じかどうか調べるのって何かやり方ある?? >>> a = [1, 2] >>> b = [2, 1] >>> a == b False これで True が返る方法 で、僕の返答: >>> set([1, 2]) == set([2, 1]) True 同じものが複数個あってその個数で区別をしたい場合、つまり [1, 2]と[1, 2, 2]は別物とみなしたいって場合はsortedでできる >>> set([1, 2, 1]) == set([2, 1, 2]) True >>> sorted([1, 2, 1]) == sorted([2, 1, 2]) False まあ、でもそういう比較が頻繁に行われるんだとすると、リストってデータ構造で持っているのが合理的じゃない可能性も考えられるね。特にリストがでかい時には毎

    リストの比較 - 西尾泰和のはてなダイアリー
    oquno
    oquno 2009/11/02
    ナルホディウス
  • PDFMiner

    Python PDF parser and analyzer Homepage Recent Changes PDFMiner API What's It? Download Where to Ask How to Install CJK languages support Command Line Tools pdf2txt.py dumppdf.py PDFMiner API Changes TODO Related Projects Terms and Conditions What's It? PDFMiner is a tool for extracting information from PDF documents. Unlike other PDF-related tools, it focuses entirely on getting and analyzing tex

  • listにjoinを追加してみた - Doge log

    もちろん、ご期待どおりあらびきな方法です。 src 高度に訓練されたpythonistaは継承で拡張なんてしません。 setup.py from distutils.core import setup, Extension module1 = Extension('listjoin', sources = ['listjoin.c']) setup( name='PackageName', version='1.0', description='This is a demo package', ext_modules = [module1]) listjoin.c #include <Python.h> static PyMethodDef ListMethods[] = { {NULL, NULL, 0, NULL} /* Sentinel */ }; static PyObject *

    listにjoinを追加してみた - Doge log
    oquno
    oquno 2009/07/19
  • pythonグラフライブラリ「matplotlib」覚書 - Pashango’s Blog

    http://matplotlib.sourceforge.net/ よく使う機能のみピックアップ。 グラフ(plot) from pylab import * x = arange(-10, 10, 0.1) y = sin(x) plot(x,y, '--') show() 棒グラフ(bar) from pylab import * datas = {"Tim":7, "Jack":10, "Matthew":4} width = 1 bar(arange(3), datas.values(), width) xticks(0.5+arange(3), datas.keys()) show() 散布図(scatter) from pylab import * N = 20 x = rand(N) y = rand(N) scatter(x, y, marker="+") show()

    pythonグラフライブラリ「matplotlib」覚書 - Pashango’s Blog
    oquno
    oquno 2009/07/07
  • Python でグラフ・(疎)行列計算するためのライブラリを紹介するよ - 武蔵野日記

    PageRank とか HITS といったリンク解析ではグラフの計算が頻発するのだが、Python でそのあたり書くときの話をまとめてみる。グラフは行列で表現できる(ノード×ノード次元の行列 A を考えて、ノード i からノード j にエッジがあるとき、A[i,j] に値を入れておけばよい。無向グラフのときは A[i,j] = A[j,i] なので対称行列になる)ので、要は行列を手軽に扱えるライブラリの紹介である。 実は Python の行列演算ライブラリはどれも lapack/blas を内部的に呼んでいるので、C/C++ 等と比較してもそんなに遅くない。それどころか、自動的に並列化できるところは並列化してくれたりするので、まれに C より速いこともあるらしい。特に巨大なグラフを作る場合、ほとんどの処理は C などで書かれた関数に飛ぶので、速度的な問題は無視してもいいくらいである(逆に、

    Python でグラフ・(疎)行列計算するためのライブラリを紹介するよ - 武蔵野日記
    oquno
    oquno 2009/07/07
  • VPython

    VPython makes it easy to create navigable 3D displays and animations, even for those with limited programming experience. Because it is based on Python, it also has much to offer for experienced programmers and researchers. Click the "Run" button above to see a 3D animation. Rotate the camera view: drag with the right mouse button (or Ctrl-drag left button). Zoom: drag with left and right mouse bu

    oquno
    oquno 2009/07/07
  • Numerical Python

    oquno
    oquno 2009/07/06
  • python での線形代数

    python での行列・ベクトル数値計算 python で行列ベクトル演算が可能です。でも、実際に行列ベクトル計算をしようとしたとき戸惑わされました。python での行列ベクトル演算について手頃な解説がありませんでした。コード例も殆どなく、試行錯誤で使う必要がありました。回り道をしました。特に Matrix と array の使い分けに戸惑いました。結論は「慣れるまでは Matrix を使わずに array の範囲だけで使っとけ。」です。慣れた後でも Matrix を使うメリットは限られます。array だけで済ましたほうが余分なことを考えずに済みます。 このような遠回りをすることなく python での数値計算を手っ取り早く始められるようにように、この Web page を書きました。C 言語や数値計算についての素養はあるが python は使い始めの方、早急に行列 ベクトル演算を行う

    oquno
    oquno 2009/07/06
  • [Tutor] How to use Numeric.zeros() / Resizing an array

    oquno
    oquno 2009/07/06
  • pythonで行列演算(簡単だ!)

    Pythonで行列演算 情報源 http://www.nasuinfo.or.jp/FreeSpace/kenji/sf/fastTour/pyLinear.htm 必要なパッケージ Numeric-24.2.tar.gz - http://sourceforge.net/projects/numpy からダウンロード インストール % python setup.py build # python setup.py install 行列の初期化 import Numeric a = Numeric.array( [[1,2], [3,4]] ) a = Numeric.zeros( 3 ) ※可変サイズの場合は、リストとして保持しておき、初期化する 行列のサイズを返す Numeric.shape(a) 行列演算 四則演算は要素ごとの演算になる。 転置: Numeric.transpose(

    oquno
    oquno 2009/07/06
    ubuntuだと sudo apt-get install python-numeric でいける
  • 二次元配列(リスト)への代入が(解決) - thetamaのなんか

    できた. 問題は配列(リスト)の初期化の部分. >>> list=3*[3*[0]] は,python的には temp=3*[0] list=3*temp となるらしく,ある要素のみに代入したつもりでも,他の行の要素まで代入してしまうみたい. 初期化を次のようにすればOK. >>> list=[[0 for i in range(0, 3, 1)] for j in range(0, 3, 1)] 言語仕様って大事ですねー

    二次元配列(リスト)への代入が(解決) - thetamaのなんか
    oquno
    oquno 2009/07/06
    ナルホディウス
  • 禁断探索法をpythonで

    ヒューリスティクスは割と好きだ。スパッととけないものをなんとか現実と折り合いを付けながらよりよい解を見つけるみたいな、なんとも煮え切らない美しさのなさがたまらん。インフォマティクスも似たような香りはする。 特に、「シミュレーションできない学問は学問として未成熟である」という言葉に従うのであれば、創薬研究は(学際領域)と言われている割には未成熟な学問の組み合わせのために発見的な手法の割合が増えすぎるし、精度の高い予測法の誕生もまだまだ先であろう。というわけで、発見的な探索手法は当分有用だし、学際領域故に融合部分での応用が期待されるため、アルゴリズムとしてきちんと押さえておくと色々役に立つ。 メタヒューリスティクスの数理の4章はpythonのコードが載っているので、勉強になる。 第4章 応用 4.1 グラフ分割問題 4.2 最大安定集合問題 4.3 グラフ彩色問題 4.4 巡回セールスマン問題

    禁断探索法をpythonで
    oquno
    oquno 2009/07/06
  • Python2.5でSQLite3を使ってみる。 - seraphyの日記

    SQLiteとは Python2.5には、標準でSQLiteという軽量データベースが含まれている。 SQLiteは、JAVAでいうところのHSQLDBやApache Derbyのような感じのようである。 SQLLiteはデーモンやサービスではなく、スタンドアロンでのみ動作する。(DerbyやHSQLDBは組み込みモードとサーバーモードの両方をもつが。) また、データベースのストアもディスク上の単一ファイルになる。 Windowsでいうところの、ACCESS95〜2000で使われていた、JETデータベースエンジンのMDBファイルのような感じであろうか。 要するに単なるライブラリである。 ライセンスは、なんとパブリックドメイン(著作権放棄)である。 そのため、Pythonに限らず、C/C++PerlPHPなどに広く組み込まれている。 Python2.4まではアドオンとして別途インストールす

    Python2.5でSQLite3を使ってみる。 - seraphyの日記
  • Python Mechanize を使ってみる - 傀儡師の館.Python:楽天ブログ

    2006.10.15 Python Mechanize を使ってみる (1) カテゴリ:その他 mechanize (Web ブラウジングをプログラムするための Python のモジュール) を使ってみることにした。mechanize は、Andy Lester さんの WWW::Mechanize (Perl 版) を参考に Python で実装したものようだ。WWW::Mechanize の日語情報を眺めてみる。このページにあるものや、サンプルスクリプトが参考になりそうだ。file upload script for sourcefourge.jp のように Mecab の sourceforge.jp へのアップロードにも使われているようだ。これも参考になるスクリプト。 urllib を使えばページをとってきたりするのは楽にできるのだが、その後、とってきたページを解析して、そこから

  • Hosting Python on GitHub?

    AI & MLLearn about artificial intelligence and machine learning across the GitHub ecosystem and the wider industry. Generative AILearn how to build with generative AI. GitHub CopilotChange how you work with GitHub Copilot. LLMsEverything developers need to know about LLMs. Machine learningMachine learning tips, tricks, and best practices. How AI code generation worksExplore the capabilities and be

  • https://www.freia.jp/taka/blog/571

    oquno
    oquno 2009/05/15
  • pykf プロジェクト日本語トップページ - OSDN

    ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので人であることの特定には利用できません。人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする

    pykf プロジェクト日本語トップページ - OSDN
    oquno
    oquno 2009/05/14
  • 文字コード判定ライブラリ Universal Encoding Detector

    Universal Encoding Detector は Mozillaのコードが移植された、文字コードを判定するライブラリです。 とりあえずの使い方はとっても簡単で文字(列)をdetect()するだけで、推定されたエンコーディングと信頼度が返ってきます。 サポートされている文字コードも文句ありません。 「あ」1文字のように入力文字列が短すぎる場合の判定は常に信頼度0.505と出てましたがエンコーディングは合っていました。実用では1文字から推定するなんて皆無なので何も心配することはないでしょう。 <  | >

    oquno
    oquno 2009/05/14
  • python の crawler 調査 — takanory.net

    仕事でちょっと必要だったので、python で動く crawler(Web ページを集めまくるツール)を調べてみました。 まずは Python Cheese Shop で crawler をキーワードに検索。すると以下のものがヒットしました。 HarvestMan 1.4.6 final Multithreaded Offline Browser/Web Crawler Orchid 1.0 Generic Multi Threaded Web Crawler spider.py 0.5 Multithreaded crawling, reporting, and mirroring for Web and FTP webstemmer 0.6.0 A web crawler and HTML layout analyzer SpideyAgent 0.75 Each use

    oquno
    oquno 2009/05/14
    情報古いかな
  • PythonでJSON ~evalでやってみよう | BoxHeadRoom

    WebAPIで使われるデータ形式JSON。普通はJSON用のパーサーを使うのですけれども、Python組み込み関数のevalで評価できないか考えてみました。 ”結構めんどくさい”ので、専用のモジュールを探して使ったほうが悩まなくてすむかも。 evalを安全に使うのくだりは自分用にメモを保存しておきたかったので、一応公開しておきます。 [pukiwiki] Pythonにて、eval関数を使ってJSONをオブジェクトに変換した場合、容易に思いつく脆弱性は _jsonstr=”__import__(‘sys’).stdout.write(‘HELLO WORLD’)” _ #print “HELLO WORLD”と同じと思って頂きたい _jsondict=eval(jsonstr) コンソールに文字が表示されます。 これを抑制するために、スコープをからっぽにしてみます。 _>>> eval(“