いろいろ備忘録日記

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

python

Pythonメモ-78 (relogコマンドを再帰的に実行してblgをcsvに変換) (windows, relog, pathlib, subprocess, with_suffix)

概要 relogコマンド久しぶりに使ったので、忘れないうちにメモメモ。 特定のフォルダ配下にパフォーマンスカウンタで取得したデータが バイナリ(blg) で保存されてて それをcsvに変換したいって事がありました。 どの言語でやっても対して手間は変わらないか…

Pythonメモ-77 (Pyre -- Fast Type Checking for Python) (facebook, 型チェッカー, mypy, そのうちPyCharmでサポートされるかも)

概要 忘れないうちにメモメモ。Facebook が Pyre という型チェッカーをリリースしました。mypy と同じ部類のものですね。 Pyre: Fast Type Checking for Python github.com pyre-check.org インストールは、pip で出来るとのこと。現状、LinuxとMacOSのみ対…

Pythonメモ-76 (Qt for Python) (PySide2から名称変更, ver.5.11がリリースされた, LGPL)

追記 2018/06/14 概要 ライセンスはどうなるのか? どのバージョンのPythonで使えるのか? 配布形態はどうなるのか? モバイルプラットフォームに対しての対応は? 追記 2018/06/14 blog.qt.io Qt for Python 5.11 がリリースされたみたいです。pipからイン…

GraalVM (Oracle, High-performance polyglot VM, いろんな言語に対応)

概要 Oracleさんが GraalVM というのをリリースしたみたいなので、とりあえず情報をメモメモ。 まだ試していないですが。 polyglot VM ってなってる通り、いろんな言語をサポートしているみたいですね。 実験的な段階ですが、ruby や python などもサポート…

Pythonメモ-75 (ライブラリメモ - logging) (getLogger, basicConfig, dictConfig, raven, SentryHandler)

概要 基本パターン (ログレベルの変更) 基本パターン (ファイルへの出力) 基本パターン (フォーマッタの指定) 基本パターン (日付書式の設定) 応用編 (ハンドラの指定) 応用編 (フィルタの指定) 応用編 (フォーマッタの指定) 応用編 (isEnabledFor()の使い方…

Pythonメモ-74 (ライブラリメモ - pathlib) (Path, glob, rglob, iterdir)

概要 pathlibとは pathlibモジュールの各関数 Path インスタンスの作成 (ctor) ファイルやディレクトリの存在確認 (exists) パスの結合 ( / ) HOME ディレクトリの取得 (home()) ファイル一覧取得 (iterdir()) ディレクトリかどうかの確認 (is_dir()) ファイ…

Pythonメモ-73 (condaのチャネルの優先度を操作) (prepend, channels, lowest channel, highest channel)

概要 やり方 condaにおけるチャネルリストの考え方 conda-forge を 低優先度に conda-forge を 高優先度に 現在のチャネルリストの確認 試してみた 参考情報 概要 忘れないうちにメモメモ。 condaを使っていて、チャネルを追加した際に lowest channel と hi…

Pythonメモ-72 (ライブラリメモ - itertools) (zip_longest, chain, groupby, accumulate, islice, tee)

概要 itertoolsとは itertoolsモジュールの各関数 itertools.chain itertools.zip_longest itertools.cycle itertools.repeat itertools.count itertools.accumulate itertools.compress itertools.dropwhile itertools.filterfalse dropwhileとfilterfalse…

Pythonメモ-71 (printデバッグの代わりに使えるライブラリ) (icecream, ic, debug, print)

概要 どんな機能? インストール 基本的な使い方 インポート 値を出力 通ったかどうかの判定用 引数の値をそのまま返してくれる サンプル 概要 とても便利なライブラリ知ったので、忘れない内にメモメモ。 github.com READMEでまず出てくるアイスクリームち…

Pythonメモ-70 (SortedList, SortedDict, SortedSet) (sortedcontainers, ソート済みコレクション)

概要 pythonでソート済みコレクションを扱う際に標準ライブラリで候補に上がるのが heapq モジュール使う queue.PriorityQueue 使う 最後に sorted かけてソートする とかでしょうか。どれも簡単に処理かけるのですが、専用のコレクションあったほうがやっぱ…

Pythonメモ-69 (標準ライブラリだけでLinuxのシステム情報を取得) (Linux System Mining with Python, Useful Blog Post)

概要 忘れないうちにメモメモ。 echorand.me CPUやメモリやネットワークなどの情報を取得するときは github.com を使うことが多いと思いますが、上記のブログ記事では標準ライブラリのみを使っていろいろ取得されています。 勉強になりました。:) 記事中のス…

searchcode (GithubやBitBucketなどのソースを検索してくれるサービス)

概要 知っている人多いのかもしれないけど、自分が忘れないうちにメモメモ。 よくgithubでコード検索して参考にしたりしているのですが、以下のサイトを発見。 searchcode.com コード検索に特化してくれているサイトです。 いろんなところにコード検索してく…

VSCodeでPython開発する際に入れとくべき拡張機能 (Top 10 Visual Studio Code extensions for Python development, Code Runner, Better Comments, GitLens)

追記 2018-06-20 以下の記事にあった autoDocstring って拡張機能がめっちゃ便利でした。これは楽ですね。 www.atmarkit.co.jp 2018-06-20 ついでに以下の記事もあったので、メモ。TODO Highlight はいいですね。 dev.to 概要 Top 10 Visual Studio Code ext…

Pythonメモ-68 (requests-html試してみた) (HTML Parsing for Humans, PyQuery, markdown, requests)

概要 Pythonの鉄板ライブラリ requests を作成した kennethreitzさんが requests-htmlというライブラリを公開されています。 github.com requestsと同じく xxxx for Humans シリーズなライブラリ。やっぱり使いやすいライブラリでした。 markdownに変換でき…

Pythonメモ-67 (JupyterLab試してみた) (JupyterLab is Ready for Users, conda, jupyter lab, PhosphorJS)

概要 JupyterLabのデイリーユースでも利用できるよレベルの版が出た模様。 blog.jupyter.org 以下のように記載されています。 tl;dr: JupyterLab is ready for daily use 以前のJupyter Notebookとはガラっと変わってタブ化などできるようになっているみたい…

Pythonメモ-66 (pycファイルの生成が行われないようにする) (PYTHONDONTWRITEBYTECODE, sys.dont_write_bytecode, __pycache__, pyc)

概要 よく忘れるので、ちょこっと自分用のメモです。 Pythonでは、モジュールをimportするとデフォルトでインタープリターがソースコードをbytecodeに変換した結果をpycファイルとして書き出すようになっています。 このファイルは、__pycache__という名前の…

zetcode さんのチュートリアルシリーズ (ZetCode turorials, 沢山チュートリアルがあるサイト)

概要 前回の devlights.hatenablog.com に続いて、ZetCodeさんのチュートリアルシリーズも、ついでにメモメモ。 いろいろな内容でチュートリアルを公開されています。 zetcode.com 多いのが、Java と Python ですが、以下の言語のチュートリアル公開されてい…

Pythonメモ-65 (send2trash) (ファイルをゴミ箱に捨ててくれるライブラリ, クロスプラットフォーム)

概要 超有名ライブラリなので、ご存知の方多いと思いますが、一応メモ。 github.com 個人的に pyperclip と同じくらい、しょっちゅう使っているライブラリ。 pyperclip については、以下でメモ書きました。 devlights.hatenablog.com 何してくれるライブラリ…

Pythonメモ-64 (contextlib.redirect_stdout) (stdoutの矛先を一時的に変更する, redirect_stderr)

概要 以前、contextlib.suppress についてメモしたのですが devlights.hatenablog.com contextlibモジュールさんには、他にも便利な関数が用意されていまして 結構個人的に利用しているのが、以下です。 contextlib.redirect_stdout 29.6. contextlib — with…

いろいろな言語をREPLで試せるサイト (repl.it, C#, python, java, C++, Go, Ruby)

概要 面白いサイト見つけたので、忘れないうちにメモメモ。 いろいろな言語をREPLで試させてくれます。何気に便利ですね。 repl.it - Select a Language 2018/02/19 現在、以下をサポートしてくれているみたい。 python3 ruby javascript C# Java C C++ Go K…

Pythonメモ-63 (vscodeのpython拡張でlinterが選択可能になった) (visual studio code, select linter, Jan 2018 Release)

概要 最近、ちょこちょこ vscodeのpython拡張についてメモしてきました devlights.hatenablog.com devlights.hatenablog.com なにかと機能豊富なpython拡張さんですが、2018.01リリースで linter も選択できるようになったみたいです。 Python in Visual Stu…

Pythonメモ-62 (glances試してみたら凄く良かった) (psutil, glances, top/htop alternative)

概要 以前に psutil についてのメモをちょっと書いていて devlights.hatenablog.com github.com 久しぶりにちょっと使うので、上の github ページみてたら下の方に psutil を使ってるプロジェクトって部分に以下を発見。 nicolargo.github.io github.com め…

Pythonメモ-61 (conda 4.4.0からactivateの仕方が変わってる) (conda, activate, deactivate, 4.4.0, conda.sh)

概要 前に devlights.hatenablog.com というのを書いていたのですが、conda activateとconda deactivateについて いつからこうなったのだろうって、conda の changelog みてたら以下がありました。 github.com どうも、4.4.0からこの形式が始まっているみた…

Pythonメモ-60 (Pythonチュートリアルを読んで勉強になったこと) (python, tutorial, document)

概要 知り合いから、pythonチュートリアルの書籍版をもらいまして、読んでみたら結構勉強になったことがありました。 Pythonチュートリアル 第3版作者: Guido van Rossum,鴨澤眞夫出版社/メーカー: オライリージャパン発売日: 2016/03/24メディア: 単行本(…

Pythonメモ-59 (dockerでpython 3.7のdataclassを試す) (dataclass, PEP 526, docker, rc-alpine, python 3.7.0a4)

概要 前回、python 3.7 で追加される Data Classes についての情報をメモしたので devlights.hatenablog.com ついでにちょっと試してみようと思います。 docker で試す でも、python 3.7 はまだアルファ版です。いきなり自分の環境に入れたりするのは嫌です…

Pythonメモ-58 (3.7で追加される Data Classes についての情報) (dataclass, PEP 526, A brief tour of Python 3.7 data classes)

概要 Python 3.7 (現在アルファ版公開中)で追加になる Data Classes についての情報メモ。 恐らく、みんな欲しかった機能ではないでしょうか。名前付きタプルも便利ですが、Mutableなデータクラスがサクッと定義できるのは楽です。 Hacker Noonさんで、A b…

Pythonメモ-57 (サブクラスで __init__ を定義する場合の注意点) (class, super, __init__, Never code a method that just delegates to the superclass)

概要 たまに間違えてバグ作ってしまったりしてるので、忘れないようメモメモ。 python で サブクラスの __init__ 定義する場合に super().__init__() としていないと、親クラスの__init__() が呼ばれないよって話しです。 他の言語の場合 (例えば C#) C#の場…

Pythonメモ-55 (pygments でシンタックスハイライトさせて遊ぶ) (pygments, pygmentize, syntax highlight)

概要 何かのライブラリをインストールしようとすると、ちょこちょこ見る名前って結構あります。 私の場合、pygments ってライブラリがよく出てきていたのですが これが何なのか知りませんでした(恥 Welcome! — Pygments とっても有名なライブラリなんですね…

最近の VSCode の Python サポート具合をメモ (Visual Studio Code, Python, conda, pytest)

概要 前回、VSCode の Java サポート具合について devlights.hatenablog.com 書いたので、ついでなので、Python の方も調べてみた。 私自身は、普段は PyCharm で作業しているので、 VSCode で書くのは、たまに殴り書きのスクリプト書くときぐらいでした。 M…

Kotlinのめっちゃ分かりやすかった記事 (Qiita, Java, Kotlin)

概要 QiitaでKotlinについて、すごく分かりやすい記事を見つけたので、忘れないようメモメモ。 公開してくださった方に感謝。 qiita.com qiita.com qiita.com Javaプログラマ向けと銘打ってありますが、Javaやってなくても充分分かります。 Kotlin勉強せなっ…