by shigemk2

当面は技術的なことしか書かない

Python

Python replace

string.replace(old, new, count) Python String | replace() - GeeksforGeeks

slack-cli

pipで入れられる。homebrewはしらない。 初実行時にレガシートークンが聞かれるのでそれを入力してつかう。トークンの場所は、helpで確認できる。 $ slack-cli -d general "Hello everyone!" https://pypi.org/project/slack-cli/

pandas PR 27899

PRクローズの原因は、想像以上にファイルI/O系のメソッドが多く、すべてのI/Oメソッドのパラメータに対応するのが非常に困難であったこと。 だから、コア開発者の間でも意見が割れに割れて、最終的にはクローズになった。 (時差とかの関係でPRの進捗が進まな…

pandas-dev PR 27899

概ね賛成 でもread_csvも変更かけてほしい ああレビューが拡散していく

pandas pull 27899 日記

openの引数は今のPython3で8つある うちいまのPandasが対応しているのは5つ(といってもerrorsはユーザーからは弄れない) 全部対応しきれないからドキュメント書くだけで良くない?という啓示 Built-in Functions — Python 3.7.4 documentation

sphinx versionadded

こういう書き方をすると """ Make box plots from DataFrameGroupBy data. Parameters ---------- grouped : Grouped DataFrame subplots : bool * ``False`` - no subplots will be used * ``True`` - create a subplot for each group column : column nam…

PyAthena

Redashで使われているAthenaのPythonパッケージ。 PyAthena · PyPI

pytest 細かく

# ファイルごと pytest -v pandas/tests/io/formats/test_to_csv.py # クラスごと pytest -v pandas/tests/io/formats/test_to_csv.py::TestToCSV # メソッドごと pytest -v pandas/tests/io/formats/test_to_csv.py::TestToCSV::test_to_csv_file_object_wi…

Pythonのcodesのエラーハンドリングオプション一覧

Pythonのcodesのエラーハンドリングオプション一覧。 strict UnicodeError例外を出す ignore おかしなデータが来ても無視する replace おかしなデータが来たら?に置換する あとの置換方法はXML文字とかバックスラッシュエスケープ文字とかだけど、backslashr…

codes.openのerrors

codes.openのerrors strict デフォルト UnicodeErrorを発生させる ignore おかしなデータが来ても無視する replace おかしなデータが来たら?とか適当な文字に変換する codecs — Codec registry and base classes — Python 3.7.4 documentation

pandas pull request template

テストしろ flake8しろ blackしろ コードレビュー ソースコード自動生成

click.UsageError

使い方間違ってる、的なのを明示したいときの例外。 API — Click Documentation (7.x)

pandas Issue投げポイント

Issue投げてね Issueめちゃくちゃ多くてチェックするのしんどいから他に似たような内容のIssueがないか探してね バージョンを最新版にしてもう一度試してね pd.show_versions() の結果を貼っつけてね

RundeckRun

This is a lightweight wrapper written in Python to interact with the Rundeck API. It uses the awesome requests library. なんだけどコードみたらAPIのバージョンが11とかなので、実行中ジョブのリストなどは使えない… RundeckRun — RundeckRun 0.2.2 …

pyenv v1.2.13

アップデート後のpyenv rehashを忘れない python-build: Add CPython 3.7.4 python-build: Add CPython 3.6.9 Release v1.2.13 · pyenv/pyenv · GitHub

PyGitHub get_issues

Issueの情報を取得する。sinceがあってuntilがないのは、公式のAPIにuntilがないから。あとsinceは更新日時基準。 Repository — PyGithub 1.43.7 documentation Issues | GitHub Developer Guide GITHUB_TOKEN="xxxxxxxxxxxxxxxxxxxxxxxxxxxxx" g = Github(G…

pandas read_json

pandas read_json pandasでJSONを読み込むアレ。 pandas.read_json — pandas 0.24.2 documentation

memo PyGitHub Repository

PyGitHub Repositoryのcreate_file/update_file/delete_fileでパスを指定するときに最初にスラッシュが必要じゃなくなった $ git tag -l --contains ee9f098d910995fc5c59dbcbe9b0490804ceec6c v1.43.3 v1.43.4 v1.43.5 v1.43.6 Add a trailing slash to URL…

name '_inplacevar_' is not defined

原理がよくわからないが、RedashのPythonデータソースで+= とか |= みたいな書き方をすると死ぬ。 github.com github.com

PyGitHubで、特定ブランチのファイルの現在のコンテンツを知りたい

PyGitHubで、特定ブランチのファイルの現在のコンテンツを知りたい。 repo = g.get_organization(xxxxxxxxxxxxxxxxxxxxxxxxxxx).get_repo("xxxxxxxxxxxxxxxxxxxxxx") base64.b64decode(repo.get_contents(/path/to/file, "refs/heads/sample_branch").conten…

PEP 275

PEP 275 switch/caseがPythonにないのはif/elifで代替できるから、という説明がされている。 Design and History FAQ — Python 3.7.3 documentation でもいくつかの代替案はPEP 275で提示されている。こういう書き方ができればうれしいと個人的には思う。 if…

pyenv installあたりでさんこうにするべき1つのサイト

pyenv installあたりでさんこうにするべき1つのサイト wikiじゃ。

AttributeError

AttributeError: 'module' object has no attribute 実行するプログラムのファイル名と、importするモジュール名が一緒だと↑のエラーになることがあった Difficulty installing required libraries : learnpython

Python ipaddress

IPアドレス(とかサブネットマスクまわり)の文字列をあれこれ操作するPython標準モジュール。 IPv4Address('192.0.2.6') in IPv4Network('192.0.2.0/28') ipaddress --- IPv4/IPv6 操作ライブラリ — Python 3.7.2 ドキュメント

Redashのクエリ結果をダウンロードするコマンドを作ってみたけど

Redashのクエリ結果をダウンロードするコマンドを作ってみたけど もうあるんだよな。しかもこのライブラリを使って実装しているので再発明に近い。 両方でできること クエリパラメータ指定(複数可) redash-query-downloadだけに出来ること 文字コード指定 フ…

Presto MAP_FILTER memo

MAP_FILTER、各要素についてのフィルターなので、OR条件で 要素AがBを満たす OR 要素CがDを満たす みたいなのはダメっぽいからおとなしくELEMENT_ATを複数回使う。 6.17. Map Functions and Operators — Presto 0.215 Documentation

ast.literal_eval

dictなstringをパースして本物のdictにするやつ。 >>> import ast >>> ym = ast.literal_eval("{'year' : 2018, 'month' : 12}") >>> type(ym) <type 'dict'> ast — Abstract Syntax Trees — Python 3.7.2 documentation</type>

Pandas for-loop memo

forループなんかすると絶対に遅いから、出来る限りapplyとかすること。

Pandas read_csv

delimiterとsepはいっしょ。 pandas.read_csv — pandas 0.23.4 documentation

Pandas ix

Warning Starting in 0.20.0, the .ix indexer is deprecated, in favor of the more strict .iloc and .loc indexers. とな。 ゆえに、loc(ラベル)もしくはiloc(ポジション)で代替せよと。 Indexing and Selecting Data — pandas 0.23.4 documentation