4. 今日の setuptools 2018.9.21 40.4.2 2017.9.15 36.5.0 2016.9.20 27.3.0 2015.9.19 18.3.2 2014.9.27 6.0 5. 今日の setuptools 2019.8.21 41.2.0 2018.9.21 40.4.2 2017.9.15 36.5.0 2016.9.20 27.3.0 2015.9.19 18.3.2 2014.9.27 6.0

拡張モジュールがリリースビルド/デバッグビルドで共用可能に これまで、デバッグ用にビルドされたPythonでは、Pythonのメモリ使用状況を調査するための機能 が有効になっていました。このため、リリース用にビルドされたPythonとデバッグ用にリリースされたPythonでは、内部のデータ構造が一部異なっており、拡張モジュールのバイナリもリリースビルド用とデバッグビルド用を別々に作成する必要がありました。 Python3.8のデバッグビルドではこの機能がオフになり、リリースビルド用の拡張モジュールをデバッグビルドでも利用できるようになりました。これまで、デバッグビルドのPythonで調査するときには使用する拡張モジュールもすべてデバッグビルド用に再構築していましたが、この作業が不要になりました。 拡張モジュールが共有ライブラリ版とスタティック版で共用可能に Pythonの構築方法には、Py
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Python入門系の記事では概して、Pythonのロギング機能の紹介で最初にlogging.debug()といったloggingモジュール付属の関数を呼ぶ方法を案内しています。 Python本家が提供するloggingの「基本チュートリアル」でもこの点で大差ありません。Python本家の基本チュートリアルでは、print()関数を使用する方法もロギングの手段として有効であるとし、タスクに応じてprint()やlogging.debug()を使いわけよう、という流れで記述されています。 コマンドラインスクリプトやプログラムで普通
MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました macOSやiOS間でファイルを送受信するのに便利なのがAirDropです。しかしWindowsでは使えないという問題があります。また、macOSでも標準実装されているAirDrop機能を使わないとならず、Finderを立ち上げたりするのが面倒です。 そこで使ってみたいのがOpenDropです。PythonによるAirDrop実装です。 OpenDropの使い方 OpenDropを立ち上げます。まずfindで対象になるデバイスを探します。 $ opendrop find Looking for receivers. Press enter to stop ... 後は send または receive を使います。sendはファイルを指定し、receiveはファイルが送られてきます
Pythonをコマンドラインで使いたいのでopyというコマンドを作った Sun Sep 8 16:22:46 JST 2019 (modified: Mon Sep 9 18:33:27 JST 2019) views: 14331, keywords:opy, Python, ワンライナー, シェル芸 この記事は最終更新日が5年以上前のものです。 一つ前の記事をもうちょい真面目に書きました。 この記事の要旨 Pythonをコマンドラインで直接使うのは面倒。Pythonワンライナーは地獄。 解決のために opy というコマンドを作って公開 使い方はREADMEにあります なかなかいいので使ってみてください opyを変な呼び方しないでください!やるなよ!絶対やるなよ!! 経緯 Rubyにrbというワンライナー用のコマンド(Rubyのラッパー)があるという話を聞いたので、Pythonでも作って
A couple of days ago I had my first experience with Google Sheets API. I thought it would be an easy task but well… not. I've been through the official Google API docs and ok, all the methods can be found there but they're lacking one big and important thing: a good walkthrough. After my disappointment with the official website, I did what pretty much everyone would do, Googled it =D. I found much
Dropbox is a big user of Python. It’s our most widely used language both for backend services and the desktop client app (we are also heavy users of Go, TypeScript, and Rust). At our scale—millions of lines of Python—the dynamic typing in Python made code needlessly hard to understand and started to seriously impact productivity. To mitigate this, we have been gradually migrating our code to stati
Are there certain parts of Python that just seem magic? Like how are dictionaries so much faster than looping over a list to find an item. How does a generator remember the state of the variables each time it yields a value and why do you never have to allocate memory like other languages? It turns out, CPython, the most popular Python runtime is written in human-readable C and Python code. This t
pandas の DataFrame は明示的にデータ型を指定しないと整数型や浮動小数点型のカラムを 64 ビットで表現する。 pandas の DataFrame は、表現に使うビット数が大きいと、メモリ上のオブジェクトのサイズも当然ながら大きくなる。 そこで、今回は DataFrame の各カラムに含まれる値を調べながら、より小さなビット数の表現にキャストすることでメモリの使用量を節約してみる。 なお、ネットを調べると既に同じような実装が見つかったけど、自分でスクラッチしてみた。 今回使った環境は次の通り。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.14.6 BuildVersion: 18G95 $ python -V Python 3.7.4 $ pip list | grep -i pandas pandas 0.25.
[前回の記事]({{ root_url }}/blog/2013/11/11/logging-system-with-fluentd-elasticsearch-kibana3/)に引き続きISUCONのために調べたことをまとめてみます. うちのチームは使用言語にPythonを選択していたので,ISUCON2やISUCON3の予選でも使われていたFlaskというフレームワークを使ったWSGI Application用のプロファイラを探したところWerkzeugのWSGI Application Profilerというものがあったので使ってみました. FlaskFlaskは,WerkzeugをベースにしてJinja2をテンプレートに使った軽量なWAFです. WerkzeugWerkzeugはWSGI Applicationのutility libraryで,フレームワークという程ではないです
概要 Elasticseachに分散表現のベクトルに対する類似文書検索が実装されたということで、以下のElasticのブログ記事を参考に類似文書検索を試してみました。 Text similarity search in Elasticsearch using vector fields | Elastic Blog 類似文書検索とは、与えられたクエリの文書と似ている文書を文書集合内から検索する技術です。この際に必要となるのが「似ている」という概念で、計算機上でどうやって2つの文書間の類似度を数値として表現するかがポイントになります。例えば、互いの文書に出現する単語の一致度や重複度合いを測ったり、TF-IDFやBM25などで文書をベクトル化して比較する方法があります。ただしこれらの方法では、言い換え表現や表記の違いにより同じ意味の単語が異なる単語だと判定されたり、文書の中では重要でない単語に
概要 CX事業本部の佐藤です。現在携わっている案件では、PythonのバリデーションライブラリのCerberusを導入しています。今回は、実際の開発でよく使うであろうバリデーションをまとめてみました。 Cerberusとは Pythonのオープンソースのバリデーションライブラリです。pythonの dict や list の各属性に対してのバリデーションを簡単に行うことができます。 リポジトリは以下です。 https://github.com/pyeve/cerberus ドキュメントは以下です。 https://docs.python-cerberus.org/en/stable/index.html 基本的な使い方 以下は、型のバリデーションのサンプルです。 v = Validator({'name': {'type': 'string'}}) v.validate({'name':
How to profile and optimize Python apps Posted on July 14, 2018 Introduction This blog post used to be a document, which was designed to be a concise and easily referenceable guide for software engineers on how to benchmark Python code and how to optimize it. As a result, it should help Python developers write more efficient Python code in the future. Profilers A profiler is a piece of software th
TL;DR 2次元環境でのセルラー・オートマトンを復習しつつPythonで動かします。 以下のようなアニメーションのものを作ります。 主な参考文献 作って動かすALife ―実装を通した人工生命モデル理論入門 また、上記書籍のgithubのリポジトリのコードもMITライセンスなので参照・利用させていただきますmm ※本記事では割愛した説明なども山ほどあるので、ALife関係の詳細は書籍をお買い求めください。 前提 以前書いた1次元のセルラー・オートマトンの記事をベースとしています(用語の説明なども含め、重複している箇所の説明は省きます)。 ライフゲームとは ライフゲーム (Conway's Game of Life[1]) は1970年にイギリスの数学者ジョン・ホートン・コンウェイ (John Horton Conway) が考案した生命の誕生、進化、淘汰などのプロセスを簡易的なモデルで再
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く