by shigemk2

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

Python

pyguide

pyguide 検索上位がDeprecatedなものであるという https://google.github.io/styleguide/pyguide.html どうでもいいけどTensorflowのPythonのインデントはスペース2なんだね

numpy argmax

argmaxで、最大値のインデックスをとる >>> import numpy as np >>> a = np.array([1,2,3,4,5]) >>> np.argmax(a) 4 最大値な値が複数あったら、最初のインデックスをとる >>> b = np.array([3,3,1,2,0]) >>> np.argmax(b) 0 numpy.argmax — NumPy v1.15 Man…

google spreadsheet api

google spreadsheet api なのだけど、updateは既にセルにデータが入っていたら何もしない挙動になっている https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/append https://developers.google.com/sheets/api/reference/re…

Python flatten

>>> import operator >>> l = [[1,2,3],[4,5,6], [7], [8,9]] >>> reduce(operator.concat, l) [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> l [[1, 2, 3], [4, 5, 6], [7], [8, 9]] >>> reduce(operator.add, l) [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> reduce(lambda x, y: …

numpy 1.15.0

Python3.4が1.16で、2.7が1.17でサポート終了とな Release v1.15.0 · numpy/numpy · GitHub

pyenvとpipとFrameworkビルド

matplotlibを使いたいがためにpyenvでFrameworkビルドなPythonをインストールする なぜかpipが入っていない 公式からpipのインストールを試みるもインストールパスを指定する方法がわからずめんどくさいからpipだけ/home/.pyenv/shimsにcp

RssLibraries

import feedparser python_wiki_rss_url = "http://www.python.org/cgi-bin/moinmoin/RecentChanges?action=rss_rc" feed = feedparser.parse( python_wiki_rss_url ) print(feed) ↓のリンク参照 https://wiki.python.org/moin/RssLibraries

beautifulsoup findAll

要素を配列に突っ込みながら、Lambdaでフィルタリングもできる soup.findAll(text="one") # [u'one'] soup.findAll(text=u'one') # [u'one'] soup.findAll(text=["one", "two"]) # [u'one', u'two'] soup.findAll(text=re.compile("paragraph")) # [u'This i…

Google Spreadsheets

Google SpreadsheetsのPython Quickstart の最新 store = file.Storage('token.json') がうまく読み込めないのでNoneにした https://developers.google.com/sheets/api/quickstart/python

import re

import re は一応書かないといけない https://docs.python.org/2/library/re.html

BeautifulSoup

BeautifulSoup スクレイピングのアレ。 pip install bs4 https://www.crummy.com/software/BeautifulSoup/bs4/doc/#

Python json

import json が決め手のおまじない loads デコード dumps エンコード https://docs.python.jp/3/library/json.html

numpy.random.shuffle

配列の中身を破壊的にシャッフル https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.shuffle.html

genfromtxt

genfromtxtで、カラム数1のデータをgenfromtxtすると、多次元配列にならない >>> import numpy as np >>> from StringIO import StringIO >>> data = "1, 2, 3\n4, 5, 6" >>> np.genfromtxt(StringIO(data), delimiter=",") array([[1., 2., 3.], [4., 5., 6…

PyCharmでvirtualenvを使うメモ

PyCharmでvirtualenvを使うメモ デフォルトだとパスの通ったPythonを使うので、virtualenvを使うには別途設定が必要 environment location dirctoryは空じゃないとダメ https://www.jetbrains.com/help/pycharm/configuring-python-interpreter.html

matplotlibをpyenvで使おうとしたときのRuntimeError

Python 2.7.11(pyenv) matplotlib 2.2.2 import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [5, 4, 3, 2, 1] plt.plot(x, y) plt.show() 無邪気にpyenvでmatplotlibを動かそうとしたら、以下のようなエラーに見舞われた。 RuntimeError: Python is n…

python-redmine

RedmineをPythonでごにょごにょするやつ https://python-redmine.com/introduction.html

Python unicodeな文字列でreplaceとかformatとかやったときの挙動

unicodeな文字列でreplaceとかformatとかやったときの挙動 >>> a = "日本語".decode("utf-8") >>> a u'\u65e5\u672c\u8a9e' >>> b = "{}".format(a) Traceback (most recent call last): File "<stdin>", line 1, in <module> UnicodeEncodeError: 'ascii' codec can't enco</module></stdin>…

Python KeyError in format

ソースコードを追っかけても原因がよくわからなかったけどドキュメントを読んだらなんとなくわかった >>> a = "{} {'alpha': 1234, 'omega': 5678}".format("test") Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: "'alpha'" >>> a = "</module></stdin>…

python-slackclient

PythonでSlackをごにょごにょするやつ from slackclient import SlackClient slack_token = os.environ["SLACK_API_TOKEN"] sc = SlackClient(slack_token) sc.api_call( "chat.postMessage", channel="C0XXXXXX", text="Hello from Python! :tada:" ) APIト…

pykakasi

Cのライブラリ kakasiの再実装 漢字カタカナひらがなをローマ字に変換する

Python uuid生成

uuid生成 uuid1よりuuid4のほうがよい uuid1はコンピュータのネットワークアドレスを含む UUID を生成するから https://docs.python.jp/3/library/uuid.html

Python3 Error

例外の書きかた忘れてた https://docs.python.jp/3/tutorial/errors.html >>> while True: ... try: ... x = int(input("Please enter a number: ")) ... break ... except ValueError: ... print("Oops! That was no valid number. Try again...") ...

PyGithub Branch

PyGithubでブランチ作りたいからBranchのクラス見たけどメソッドがない create_git_refをつかうこと branchのref 派生元branchの最新コミットのsha(っていうかコミットログのあれ) repo.create_git_ref("refs/heads/branchname", repo.get_git_ref("heads/ma…

PyGitHubのドキュメント

PyGitHubのドキュメント http://pygithub.readthedocs.io/en/latest/index.html 具体的な使い方や詳細な使い方は、テストコードとか、本家のAPIなどをさんしょうするといいとおもう https://developer.github.com/v3/

Python request

Pythonからhttpリクエスト処理するアレ。 http://docs.python-requests.org/en/master/user/quickstart/

python click

Pythonのコマンドラインパーサ 名前が不自然だけど… http://click.pocoo.org/5/

sqlalchemy-searchable

sqlalchemyの全文検索版の設定 複数カラムを同時に検索するときの重みを設定できる Configuration — SQLAlchemy-Searchable 1.0.3 documentation

redash checkbox sort value

redash checkbox sort value これはY軸をソートするものではなく、X軸をソートしているので、order byしているものでsort valueするとおかしなことになる。 実際にデータをソートしている箇所 underscoreのsortByを利用している。ここではX軸をソートしてい…

memo redash dev build

memo redash dev build なぞればよい pip install npm install build 設定チェック DBチェック webサーバー起動 celery起動 https://redash.io/help/open-source/dev-guide/setup