いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

2017-01-01から1年間の記事一覧

Pythonメモ-09 (pythonnet, Python for .NET, python と .NET を繋ぐライブラリ)

まだ、あんまり覚えてないですが、とりあえずメモメモ。 概要 pythonnetは、python と .NET を繋ぐライブラリ。 Python for .NET 似たようなライブラリとして IronPython がありますが、IronPython は .NET Framework や Monoで実装されたPython処理系。なの…

Pythonメモ-08 (Python loop optimization, ループ最適化, 時間計算量, Time-Complexity)

今回、あんまり python 関係ない話題ですが、面白かったのでメモメモ。 どの言語にも言える話です。 概要 stackoverflow の Python カテゴリ見てたら、以下の内容を発見。 stackoverflow.com トピックの投稿者さんは、処理をPythonで書いてるけどめっちゃ時…

Pythonメモ-07 (collections.namedtuple, 名前付きのフィールドを持つタプル)

namedtupleについてのメモです。 概要 むかーしむかしにpython触っていた時(多分 2.0 とかそのへん)には、無かったのですが 最近またpython触るようになって、まず気に入ったのがこの namedtuple さん。 軽いし、フィールドアクセスできるし、なんといって…

プログラミングフォント (96 Best programming fonts as of 2017)

以下のページに「96 Best programming fonts as of 2017」って形で リストアップされています。上位のフォントはどれも有名どころですねー。 www.slant.co 個人的には、昔から「Pragmata Pro」フォントが好きなのですが フルセットの値段が高い・・・・( ;∀…

Pythonメモ-06 (PEP-3132 Extended Iterable Unpacking)

概要 小ネタ。Python 3.0で追加された仕様です。 知ってるとちょっと楽できます。 以下のPEPです。 www.python.org 名前は、Extended Iterable Unpacking って感じのちょっとむずかしそうな 名前ですが、実際にコード見てみるとすぐ意味が分かります。 list0…

Pythonメモ-05 (内包表記について)

以下、自分用のメモです。 概要 pythonといえば、「リスト内包表記(list comprehension)」が有名ですが リストだけじゃなくて、辞書にも集合にも内包表記があります。 リスト内包表記 [ expression for item in iterable] 辞書内包表記 { key_item: value_it…

Pythonメモ-04 (iterable, iterator, generator, yieldについて)

Pythonやりだすと、いろいろ便利なのでオモシレーってなって、もっと知りたいってなったころに出てくる子達がいます。 iterable, iterator, generator, yield 他の言語やってる人だと大体「あー」って分かるものなのですが とは言え、最後の yield などは初見「な…

Pythonメモ-03 (リスト内包表記の中でファイルをopenすることについて)

以下、自分用のメモです。 Pythonといえば、リスト内包表記。楽なので、ほいほい使いたいところなのですが スクリプト書くときって往々にして、なんかデータが詰まっているファイルがあって その中身をゴニョゴニョして、整形したり抽出したりすることが私の…

Pythonメモ-02 (改行コードをsplitしたい場合, splitlinesを使う)

以下、忘れないうちにメモメモ。 特定のデータがあって、改行コードでsplitしたい場合 DATA.split(os.linesep) ってやれば、macとlinuxではうまくいくんですが windowsでやると、分割されずに一つの文字列として 結果が返ってきた。 どうも、Windowsの場合 o…

Pythonメモ-01 (アスタリクスのみの引数, 後続のキーワード引数のキーワード指定を強制する)

個人的なPythonメモです。 環境 $ python Python 3.6.0 |Anaconda custom (x86_64)| (default, Dec 23 2016, 13:19:00) [GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin Type "help", "copyright", "credits" or "license" for more info…

.NET クラスライブラリ探訪-070 (System.Diagnostics.DebuggerDisplayAttribute, デバッグ時のオブジェクト表示方法を制御)

久しぶりの小ネタ。 DebuggerDisplay属性とは この属性を付与すると、デバッグ時のオブジェクトの表示内容が制御できます。 意外と知られていないのか、いちいち付与するのが面倒なのか分かりませんが 個人的にはあまりお目にかかったことはなかったり。デー…

JetBrains Rider 2017.1 EAP でTFSインテグレーションがなくなってる?

アップデートしたらTFSのメニューがない 以前のバージョンには、デフォルトでTFSのインテグレーション機能があったと思うのですが 2017.1 EAPにしたら、デフォルトで入ってない状態になってました。 しばらく気づかなくて、「アレープロジェクトガアップデートデキナイヨ」…

インストールされている .NET Framework の更新プログラムを調べる

元々は、MSDNの以下のページにあったもの。 方法 : インストールされている .NET Framework の更新プログラムを確認する いつ、このページが消えるか分からないので、自分のところでもメモメモ。 インストールされている .NET Framework のパッチを調べる (C…

Pythonメモ-00 (マルチバイトを考慮した文字幅を取得)(unicodedata, east_asian_width, multibytes, WF)

スクリプト書いていると、等幅フォント上で全角半角混じった文字列をピシッと 揃えたいときがよくあります。pythonのlen()は文字数を返すので、それでイケルと思ってしまいますが s = 'hello' len(s) 5 # OK s = 'こんにちわ' len(s) 5 # (´・ω・`) max_widt…

シーケンスを特定数のチャンクに分割

どの言語でもちょくちょく使う特定の数のチャンクに分割する処理のPython版。 いつも忘れてしまうのでメモメモ。 def chunks(sequence: Sequence, chunk_size: int = 1) -> Iterator[Any]: """ 指定されたシーケンスを指定されたチャンクに分割します. :para…