いろいろ備忘録日記

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

python

Pythonメモ-83 (PyInstaller が python 3.7 に対応) (Add support for Python 3.7)

概要 いつもお世話になっている PyInstaller が、最新バージョンの 3.7 に対応したとのこと。 忘れないうちにメモメモ。PyInstaller の バージョン 3.4 から対応となっています。 Python 3.6 の対応は、すごく時間がかかった記憶があったのですが、今回は速…

Pythonメモ-82 (anaconda が python 3.7 に対応) (Python 3.7 Package Build Out & Miniconda Release)

概要 Anaconda / Miniconda が Python 3.7 に対応したものがリリースされたとのこと。 忘れないうちにメモメモ。 www.anaconda.com バージョンアップ python をバージョンアップするには、私は以下のようにしました。 $ conda activate xxxxx $ conda instal…

Pythonメモ-81 (python 3.7 がリリース) (data classes, breakpoint, asyncio.run, 参考情報)

概要 ついに Python 3.7 がリリースされました。 data classes とか breakpoint() とか asyncio.run() とか新たな機能が追加されていますね。 以下、自分が勉強するためのリソースです。 参考情報 Cool New Features in Python 3.7 realpython.com いつもお…

オープンソースライセンスの選び方ガイドページ (Choose an open source license, MIT license, Apache license, GNU GPLv3)

概要 Gigazine さんで以下の記事がアップされてたので、忘れないうちにメモメモ。 gigazine.net 公開されているライブラリを利用させてもらう際にもとても重要なライセンス。しっかり理解していないとあとで問題になったりします。 上記の記事で紹介されてい…

Pythonメモ-80 (dropboxがmypy-Pycharm-pluginをGithubで公開) (mypy, pycharm, プラグイン, jar)

概要 Dropbox が Github 上で mypy-PyCharm-pluginというプロジェクトを公開してくれています。 忘れないうちにメモメモ。 github.com どういうプラグイン? 元々 PyCharm には、独自の検証機能が付いています。(PEP-484) (IDE & Linter Integrations) 基本…

Pythonメモ-79 (ciso8601) (datetime, strptime, parse_datetime, 最速日付解析ライブラリ)

概要 インストール とりあえず動かしてみる 結果 通常の datetime.strptime の場合 ciso8601 備考 概要 ひょんなことで見つけたライブラリ。日付文字列をdatetimeに変換してくれるライブラリなのですが、最速みたいです。 www.peterbe.com githubページは以…

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メディア: 単行本(…