タグ

pythonに関するsiroccoのブックマーク (108)

  • Kyoto University Research Information Repository: プログラミング演習 Python 2019

    書はCC-BY-NC-NDライセンスによって許諾されています。ライセンスの内容を知りたい方はhttps://creativecommons.org/licenses/by-nc-nd/4.0/deed.ja でご確認ください。

    sirocco
    sirocco 2020/02/23
    メモ。やるときあるかな。
  • 機械学習ライブラリ Chainerの紹介 - のんびりしているエンジニアの日記

    皆さんこんにちは お元気ですか。私は元気です。 Chainerと呼ばれる機械学習ライブラリを紹介しようと思います。 Chainerについて Chainerとは? ChainerはPreffered Networksが開発したニューラルネットワークを誤差伝播で学習する ライブラリです。(Python)chainer.org 特徴として、Chainer は、「実際に Python のコードを用いて入力配列に何の処理が適用されたかだけを記憶しておき、それを誤差逆伝播の実行に使います」だそう。 Install sudo pip install chainer 基的にこれだけのインストールが非常に簡単なソフトウェアです。 他のライブラリとの比較 ディープラーニングが活かすIoTより抜粋。 個人的に注目した違いは以下の3点 CaffeもTheanoも勉強することが多い。(設定ファイルとか) 短く書け

    機械学習ライブラリ Chainerの紹介 - のんびりしているエンジニアの日記
    sirocco
    sirocco 2015/09/11
    「画風を変換するアルゴリズム」はPythonで動くのですが、Chainerというライブラリを使っている。Chainer って何? ニューラルネットワークを誤差伝播で学習するライブラリです・・・読むと分かるでしょうか?
  • Tkinter 入門: 2. Widget を配置しよう

    1. 初めに Tkinter は widget を配置する方法として pack, grid, place の3つの方法があり、 3つとも widget のメソッドとして定義されています。また、配置の枠組みを決める Frame という widget があります。Frame 自身はほとんど何も表示しませんが、widget をまとめるのに使います。 まず、Frame について説明して、それから、pack, grid, place の順に説明していきます。 2. Frame widget を生成するとき、親 widget を指定する必要があります。多くの場合、それは Frame になります。 Frame は widget をグループ化する widget と考えることができます。 Frame は入れ子にすることができ、それによって、プログラムのモジュール化を図れます。 多くの場合、一番上の Fram

    sirocco
    sirocco 2014/08/24
    何もインストールせずに動いた。私はwxFormBuilderとwxPythonで行きますが。
  • Tkinter 入門: 1. Hello World!

    1. Hello world! 1. 初めに Tkinter は Python の標準的な GUI(Graphic User Interface) ツールです。Python は人気のある言語なので、 GUI Tool としては Tkinter のほかに wxPython, Qt, GTK などがありますが、Tkinter が一番 こなれている感じです。つまり、 動作が安定している。 起動が早い。 プログラムが短くてすむ。 の3つが特徴として挙げられると思います。 Tkinter のチュートリアル はすでにかなり存在しているのですが、Tk が巨大なシステムということも有り、 全てをカバーしたものはありません。この一連の文書では、他のチュートリアルがあまり取り上げていない話題を 中心に取り上げたいと思います。特に、widget を変化させることは他のチュートリアルで取り上げられていないので、

    sirocco
    sirocco 2014/08/24
    Tkinter を忘れていたので検索すると、約 888,000 件。 私はPython はwxPythonで行きます。
  • either

    sirocco
    sirocco 2014/08/05
    python で使える Either、Maybe のモジュール。これからテストしてみます。
  • Pythonでtry exceptの書き方と、エラー内容の取得方法

    恥ずかしながら、今までPythonのプログラムを書いているとき、 ちゃんとエラー処理をしていませんでした。 というのも、exceptに何を記載したらよいのかいまいちわからないし、 エラーを受け取った時のエラーメッセージをどのように表示すればよいか わからなかったので、スルーしてました。 最近、まれにエラーが発生するプログラムにエラー発生時のログを仕込みたい時に とても困ったので調べたことをメモしておきます。 とりあえずtry-except 悪い例ですが、とにかくエラーが発生しても以降の処理を続行したい場合は、 try-exceptで囲ってしまえばOKです。 # -*- coding:utf-8 -*-print '処理開始'try:    print 'try-開始'    #エラーを発生させるため0除算    a = 10 / 0    print 'try-終了'except:    

    Pythonでtry exceptの書き方と、エラー内容の取得方法
    sirocco
    sirocco 2014/08/04
    Python の例外処理。
  • Pythonのモジュールインポートのしくみ — PythonMatrixJp

    インポートする時 hoge.pyというモジュールをインポートする時、 hoge.pycファイルがなければコンパイル後のキャッシュをhoge.pycとして保存するようです。 パッケージってなんなの? Pythonではフォルダに「__init__.py」があれば、そのフォルダを「パッケージ」として扱えるようになっています。 論理的なツリーを構築するためにもつかえますし、このフォルダ内に複数のモジュールを入れておき、あたかも巨大なひとつのモジュールのように振舞わせることが出来ます。

    sirocco
    sirocco 2014/08/02
    Pythonのインポートとかお勉強。
  • 2.4.1 文字列リテラル

    Download entire grammar as text. 上記の生成規則で示されていない文法的な制限が一つあります。それは 文字列リテラルの stringprefix と残りの部分の間に 空白を入れてはならないということです。ソースコード文字セット (source character set) はエンコード宣言で決まります.エンコード 宣言がない場合には ASCII になります.2.1.4 節を 参照してください. より平易な説明: 文字列リテラルは、対応する一重引用符 (') または 二重引用符 (") で囲われます。また、対応する三連の一重引用符 や二重引用符で囲うこともできます (通常、三重クオート文字列: triple-quoted string として 参照されます)。バックスラッシュ (\) 文字を使って、 ある文字を例えば改行文字やバックスラッシュ自体、クオート文字と

    sirocco
    sirocco 2014/08/02
    "u" や "U" を接頭すると、 文字列はutf-8でもcp932でも Unicode に変換してから実行される。"r" や "R" を接頭すると、 raw 文字列と呼ばれ、バックスラッシュによるエスケープシーケンスの 解釈規則が異なる。
  • Python でネストした関数の定義と、呼び出し

    1. 関数の中の関数 Python では、関数の中に、関数を定義することができる。 例えば、ITmedia エンタープライズ:2.4への機能強化で広がるPythonの世界 (3/4) には、以下のような例が書かれている。 def declareArgs(*argTypes): def checkArguments(func): assert func.func_code.co_argcount == len(argTypes) def wrapper(*args, **kwargs): ... ネストした関数を呼び出すには、関数の呼び出しで、順に引数を与えれば良い。 7.5 関数定義 に、呼び出し方の例が書かれている。 func = f1(arg)(f2(func)) 2. 関数のネストと、スコープ E. 用語集 によると、 ネストされたスコープ (nested scope) ある文が何ら

    Python でネストした関数の定義と、呼び出し
    sirocco
    sirocco 2014/08/02
    Python では、関数の中に、関数を定義することができる。
  • Python で map 関数の第 2 引数を操作の対象ではなく手段として使う

    操作対象としてのリスト map 関数は、2.1 組み込み関数 によると、 map(function, list, ...) function を list の全ての要素に適用し、返された値からなるリストを返します。 操作対象のリストがあり、それを操作する関数を定義するというイメージ。 例えば、リストの各要素を 2 倍したいなら、 print map(lambda x: x*2, [1,2,3,4,5]) map 関数の第 2 引数のリストに対して、第 1 引数の関数を適用する。 リスト内包表記を使うなら、(cf. Python のリスト内包表記) print [x*2 for x in [1,2,3,4,5]] 対象のリストがあって、そこから一つずつ取り出して関数を適用する。 リストは「料理される側」であって、関数はそれに対する「包丁」というイメージが自分の頭に固定された。 (+_+) 手

    Python で map 関数の第 2 引数を操作の対象ではなく手段として使う
    sirocco
    sirocco 2014/08/01
    Python のmap、Rubyの のmap。
  • Python のメソッドをクロージャとして使う - tomapd == 22%

    Python においてメソッドはユニークな性質を持っており、bound されているか unbound か、明確な違いがある。bound / unbound とは、そのメソッドが特定のインスタンスに属しているか、いないかという言い方が出来ると思う。 class Person(object): def __init__(self, name, age): self.__name = name self.__age = age def get_name(self): return self.__name def get_age(self): return self.__age単純なクラスを定義してみた。このクラスのメソッドを調べてみると、 >>> Person.get_age <unbound method Person.get_age>こちらは unbound となっているが、 >>> p =

    Python のメソッドをクロージャとして使う - tomapd == 22%
    sirocco
    sirocco 2014/07/31
     bound method になったときは、関数にする。unbound method になったときは"self" に相当するインスタンスを与える。
  • Python のクラスシステム

    1. 初めに この文書の目的は、 Python で自前の class を作るとき、メソッドの第一引数がそのクラスのインスタンスそれ自身 (一般に self と書かれる) であることの理由を説明することです。 他の言語ではメソッドを定義するときに第一引数をインスタンスにするという方法は取り入れておらず、 this などの予約語を使ってインスタンスを表すのが一般的です。 Python だけが、独自の流儀をとっています。 しかし、このことを説明したサイトは見当たりませんでした。 どのサイトもそれは決まりごとだで済ませてしまっています。 しかし、それではどうも Python のクラスシステムを理解した気になれないので、Python でクラスシステムが どのように実装しているか推測しながら、例の self について説明したいと思います。 2. オブジェクト指向プログラミングの復習 オブジェクトとは、

    sirocco
    sirocco 2014/07/31
     「この文書の目的は、 Python で自前の class を作るとき、メソッドの第一引数がそのクラスのインスタンスそれ自身 (一般に self と書かれる) であることの理由を説明することです」
  • Pythonを書き始める前に見るべきTips - Qiita

    Pythonを使ってこの方さまざまな点につまずいたが、ここではそんなトラップを回避して快適なPython Lifeを送っていただくべく、書き始める前に知っておけばよかったというTipsをまとめておく。 Python2系と3系について Pythonには2系と3系があり、3系では後方互換性に影響のある変更が入れられている。つまり、Python3のコードはPython2では動かないことがある(逆もしかり)。 Python3ではPython2における様々な点が改善されており、今から使うなら最新版のPython3で行うのが基だ(下記でも、Python3で改善されるものは明記するようにした)。何より、Python2は2020年1月1日をもってサポートが終了した。よって今からPython2を使う理由はない。未だにPython2を使う者は、小学生にもディスられる。 しかし、世の中にはまだPython3に

    Pythonを書き始める前に見るべきTips - Qiita
  • RubyプログラマがPythonを学び始めて知ったこと10選 ④ - donghai821の日記

    1 クラスのメソッド定義の第一引数には必ずselfが必要。 class MyClass: def my_method(self): # 処理 尚、第一引数の名前は別にselfでなくてもよい。ただ慣習的にselfが使われる。 2 クラスをインスタンス化するには関数表記を使う。 class MyClass: def my_method(self): return 1 m = MyClass() # インスタンス化 m.my_method() => 1 ちなみにメソッドコールの時はselfは不要。暗黙的に現在のオブジェクトが渡される。 3 クラス名の一文字目は小文字でもよい。 よいけど、慣習的に大文字にしてるのだとか class my_class: def my_method(self): return 1 m = my_class() m.my_method() => 1 ちなみにモジュール名

    RubyプログラマがPythonを学び始めて知ったこと10選 ④ - donghai821の日記
    sirocco
    sirocco 2014/07/29
    変数、クラスに使う文字は大文字から始まっても小文字から始まっても特に変わったことは起きないようだ。
  • 3.4.1 基本的なカスタマイズ

    クラス cls の新しいインスタンスを作るために呼び出されます。 __new__() は静的メソッドで (このメソッドは特別扱いされている ので、明示的に静的メソッドと宣言する必要はありません)、インスタンスを 生成するよう要求されているクラスを第一引数にとります。残りの引数はオブ ジェクトのコンストラクタの式 (クラスの呼び出し文) に渡されます。 __new__() の戻り値は新しいオブジェクトのインスタンス (通常は cls のインスタンス) でなければなりません。 典型的な実装では、クラスの新たなインスタンスを生成するときには "super(currentclass, cls).__new__(cls[, ...])"に適切な引数を指定してスーパクラスの __new__() メソッドを呼 び出し、新たに生成されたインスタンスに必要な変更を加えてから返します。 __new__() が

    sirocco
    sirocco 2014/07/28
    Python には __str__ という特殊なメソッドがある。これはHaskellのShow インスタンスで返す文字列を定義するのと同じようなもの。
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    sirocco
    sirocco 2014/07/26
     Pythonの文字列はシングルクォートでもダブルクォートでもRubyのような違いはない。シングルクォートで囲まれた中にダブルクォートが使え、その逆も可能。
  • Python による日本語自然言語処理

    はじめに この文書は、 Steven Bird, Ewan Klein, Edward Loper 著 萩原 正人、中山 敬広、水野 貴明 訳 『入門 自然言語処理』 O'Reilly Japan, 2010. の第12章「Python による日語自然言語処理」を、原書 Natural Language Processing with Python と同じ Creative Commons Attribution Noncommercial No Derivative Works 3.0 US License の下で公開するものです。 原書では主に英語を対象とした自然言語処理を取り扱っています。内容や考え方の多くは言語に依存しないものではありますが、単語の分かち書きをしない点や統語構造等の違いから、日語を対象とする場合、いくつか気をつけなければいけない点があります。日語を扱う場合にも

  • Python基礎文法最速マスター - D++のはまり日誌

    ↓に便乗してPython版も書いてみました。 Perl基礎文法最速マスター - Perl入門〜サンプルコードによるPerl入門〜 Ruby基礎文法最速マスター - Route 477 PHP基礎文法最速マスター - Shin x blog ほとんど上記の記事と同じような内容で書いたのでPython入門記事としては色々抜けていたりしますがご了承ください。 Pythonは現在3.x系がリリースされていますが記事では基的にPython2.6について書きます。 参考文献: 初めてのPython (asin:4873113938) Python Documentation Index http://www.python.org/doc/ Python 和訳Document http://docs.python.jp/2/ 0. 対話環境として使う 対話環境 pythonはそのまま実行すると対話環

    Python基礎文法最速マスター - D++のはまり日誌
    sirocco
    sirocco 2014/07/26
    しばらくはPythonを学習します。
  • HOME > 電算 > Python と文字コード

    HOME > 電算 > Python と文字コード Python と文字コード Python で行き当たりばったりに日語処理をしてきたが、これではいかんと思っていくらかまとめてみた。(当然、このメモには間違いや誤解があろうと思う) 「python は『abc』を使うのが基で『あいう』を使うのが例外だ」と考えると、「あいう」に対してできないことが多すぎて難しく見える。しかし、「『あいう』に対して使えるようなやり方なら『abc』にも問題なく使えて、ただ、『abc』には特権的に無作法な書き方が許されているのだ」と考えれば、ずっと簡単に理解できるように思う。 まとめ ユニコードは「文字コード」(バイト表現と文字の対応関係)ではない utf-8 は「文字コード」である Python の unicode 型は「文字コード」にとらわれない型で、CPU やメモリ上で用いられる Python の str

    sirocco
    sirocco 2014/07/25
    unicode 型はそのまま出力できないと考えておく。 encode('utf-8') メソッドをくっつけるとOK。
  • Unicode HOWTO — Python 2.7.18 documentation

    This document is for an old version of Python that is no longer supported. You should upgrade and read the Python documentation for the current stable release. Unicode HOWTO¶ Release 1.03 This HOWTO discusses Python 2.x’s support for Unicode, and explains various problems that people commonly encounter when trying to work with Unicode. For the Python 3 version, see <https://docs.python.org/3/howto