Python関連のことを調べてみた

Python関連のことを調べてみた
目次

[Python]処理時間をもっと簡単に計測したい

# はじめに
 **コードの処理時間を計測したい**ケースは多々あります。調べると色々な方法が出てきます。それぞれに特徴があるようなので、使用ケースや求める精度に応じてZ**最適な方法を選んだほうが良さそう**です。とはいえ、一番手軽なのはなんだかんだ`time`モジュールを用いる方法ではないでしょうか。
 それでも**あまり使い勝手が良くない**と感じていたので非常に簡単なクラスを自作しました。

**→[コードだけを見る](#コード)**

# 前提
* JupyterやColabでコードを書いている
* 処理時間の計測を何度もいちいち記述するのが面倒
* `正確な計測` よりも `簡単な計測`を重視している

# 意外と面倒・・・
 `time`モジュールの`time()`や`perf_counter()`を用いて、以下のような方法で処理時間を計測するのが一般的かと思います。たった4,5行の記述ですが、**見栄えが悪い**ですし、比較したいそれぞれの処理に対して**何度もコピペするのが意外と面倒だな**と感じていました。

“`python
import tim

元記事を表示

colspanとrowspanを考慮してテーブルをパースする

Pythonでスクレイピングなどする際、BeautifulSoupを用いてHTMLをパースすることがよくあると思います。表をパースする場合はTableタグのパースをすれば良いので同様に対処できます。

しかし以下のようなcolspanやrowspanが設定されている表の場合には工夫が必要になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/437488/6d13399b-5d36-53e3-297e-d86e555deaa5.png)

“`html:sample.html

Pythonだけで作る Web アプリケーション(フロントエンド編)Bookの紹介

お疲れ様です。

今日は「Python だけで作る Web アプリケーション(フロントエンド編)」Bookについて紹介いたします。

以前に投稿した記事は削除しました。

下記のbookをご紹介します。

https://zenn.dev/alivelimb/books/python-web-frontend

よろしくお願いいたします。

Snowflake Excelデータロード:Pythonによるロード(特定フォルダ内の複数ファイル)

[目次に戻る](https://qiita.com/taku_tachibana/items/408686a031b9624e981e)

### ■本記事の目的
Snowflakeに、構造化データで記載されたExcelファイルを直接テーブルにロードする検証を行うため。
SnowflakeのPythonワークシートにて、SnowPark、PandasなどのPythonライブラリによるプログラム検証を行うため。

### ■前回の記事
[Snowflake Excelデータロード:Pythonによるロード(単一ファイル)](https://qiita.com/taku_tachibana/items/bda725cd2b6993f482e3)

### ■概要
[Snowflake S3データロード:③外部ステージ](https://qiita.com/taku_tachibana/items/030ed2720ee25039dc12) から派生して検証する。
ストレージ統合、外部ステージはそのまま流用で、検証を行う。
今回は、特定フォルダ内の複数ファイルをロードすることを行う。
※ブッ

Snowflake Excelデータロード:Pythonによるロード(単一ファイル)

[目次に戻る](https://qiita.com/taku_tachibana/items/408686a031b9624e981e)

### ■本記事の目的
Snowflakeに、構造化データで記載されたExcelファイルを直接テーブルにロードする検証を行うため。
SnowflakeのPythonワークシートにて、SnowPark、PandasなどのPythonライブラリによるプログラム検証を行うため。

### ■概要
[Snowflake S3データロード:③外部ステージ](https://qiita.com/taku_tachibana/items/030ed2720ee25039dc12) から派生して検証する。
ストレージ統合、外部ステージはそのまま流用で、検証を行う。
今回は、単一のファイルをロードすることを行う。

### ■Pythonライブラリ
Pythonのコマンドは、以下をインストールします。
・snowpark
・pandas
・openpyxl

### ■検証テストデータ
Excel内のテストデータは、以下のようにA1セルから始まる構造化データの状態で

【bit全探索】誰でも理解できるアルゴリズム解説

# はじめに
今回から、備忘録としてアルゴリズムの解説をしていきます。
「わかりやすく短く」を意識して執筆していきます。
コードは毎回Pythonで実装していきます。
第1回は、C問題頻出の ***bit全探索*** ですます。

### この記事を理解するために必要な前提知識
誰でも理解できるという題ですが、前提知識がなければどうにもなりません。
最低でも**下記の知識は理解している前提**で執筆いたします。
– [二進数(bit演算)](https://www.infraexpert.com/study/ip1.html)
– [全探索](https://news.mynavi.jp/techplus/article/algorithm-2/#:~:text=%E5%85%A8%E6%8E%A2%E7%B4%A2%E3%81%AF%E3%80%81%E3%81%82%E3%82%8A%E5%BE%97%E3%82%8B,%E8%80%83%E3%81%88%E3%81%A6%E3%81%BF%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%E3%80%82)

Python x Uniswap v3で自動注文したい

# 趣旨
DEXを扱う時はJavaScriptの方が遥かに扱いやすいのですが、Pythonでも扱えるといろいろと便利だなと思い、価格取得と注文を出すのだけ簡潔にできる方法を探してみました。

– 間違えてプライベートキーを流出させないように環境変数を利用しています。
– Infuraの活用方法は割愛します。
– EthereumはETHの単位を合わせるのが大変ですね。
– CEXとは違って小さなミスが命取りになりかねないです。
– ロジックなどはなく一通りとりあえず動くものを準備しました。
– 便利そうだったのでUnipyを利用しています。

https://uniswap-python.com/getting-started.html#getting-started

# コード
Pythonが読める方なら、ドキュメント読みながら以下のコードを何度かいじくりまわしながら実行すると数十分で扱えるようになると思います。

“`python
from uniswap import Uniswap
from dotenv import dotenv_values
import os
fr

Pythonのキーボード入力でMac環境でおきるトラブル

# 概要
 Mac環境でKeyboardライブラリが使いにくいという話です。回避策はあるものの、やや使いにくいです。

# キーボード入力

Pythonでキーボード入力をしようとする場合、2つの手法が見つかる。
①input関数を使う
②keyboardライブラリを使う

①は2文字以上の文字とか数字を扱う。エンターキーで確定するまで、入力を受け付ける。②はデバイスとしてのキーボードを扱う。

この投稿では②を扱う。

# keyboardライブラリのインストール
ターミナルからコマンドでインストールする。
“`
pip install keyboard
pip show keyboard
“`
“`
Version: 0.13.5
“`

# プログラム例

よくあるコードは、こんな感じです。
また、保存するファイル名を“`keyboard.py“`にすると、エラーになります。
注意しなければ。
“`py:python
import keyboard

while True:
if keyboard.is_pressed(“shift”):

Claude 3を使ってさっそくローカルで画像解析してみた!

## Claude 3とは
2024年3月4日の夜中に颯爽と発表された、ClaudeV2.1に次ぐAnthropicの新しい基盤モデルになります。

https://www.anthropic.com/news/claude-3-family

Claude3はOpus、Sonnet、Haikuの3種類のモデルが同時に新しく発表され、それぞれ性能とコスパで差別化されてるようです。
![スクリーンショット 2024-03-05 1.36.31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/354022/c4ac0a7c-6466-20c1-efff-737d6eb5cfb0.png)

## 気になる性能は?

一番ハイエンドなモデルOpusではなんとOpenAIのGPT4やGoogleのGemini Ultraを凌ぐベンチマークを叩き出しているようです!これには期待感が高まりますね。

![スクリーンショット 2024-03-05 1.34.30.png](https://qiita-image-st

Python ( Boto3 ) からBedrockのClaude3を実行する

Anthropic社はClaude3をリリースしました。
一部のモデル ( Claude 3 sonnet )は既にBedrockで使用可能になっています。

https://www.anthropic.com/news/claude-3-family

https://qiita.com/minorun365/items/e6f3aa71f5e1bdf21139

というわけでBoto3から呼びだしてみます。

# AWS公式コードサンプル

https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters-anthropic-claude-messages.html#api-inference-examples-claude-messages-code-examples

色々変わっているので少し見てみます。

“`Python
model_id = ‘anthropic.claude-3-sonnet-20240229-v1:0’
“`

モデルIDとしては上記を指定します。

“`Python

【個人開発】クリップボードを読み取って文字数を出力する方法

## はじめに
Wordpressでブログを始めてから、文字数に気を使うことが増えました。記事のタイトルは30文字程度に収めなければ、はみ出してしまうからです。

文字数を簡単に計算できるツールはたくさんありますが、多くは「コピーした文章を貼り付けて」計算する方式です。

そこで、「**clipcount**」というPythonパッケージを作成しました。これにより、文章をコピーするだけで文字数が表示され、「貼り付ける」手間を省くことができます。

## clipcount

clipcountはクリップボードの文字を読み込み、文字数を出力するPythonパッケージです。

https://pypi.org/project/clipcount/

### 1.インストール(Setup)
pipでインストールします。
“`bash:
pip install clipcount
“`
#### Windowsで「警告」が出た時の対処方法

Windowsで上記のコマンドを実行した際に「`”WARNING: The script clipcount.exe is installed i

Pythonで〇×ゲームのAIを一から作成する その59 演繹法とヒューリスティックによる問題の解決

# 目次と前回の記事

https://qiita.com/ysgeso/items/2381dd4e3283cbed49a0

https://qiita.com/ysgeso/items/3d340c07f3d515ce5fe9

## これまでに作成したモジュール

以下のリンクから、これまでに作成したモジュールを見ることができます。

https://github.com/ysgeso/marubatsu/blob/master/059/marubatsu.py

https://github.com/ysgeso/marubatsu/blob/master/059/ai.py

## これまでに作成した AI

これまでに作成した AI の アルゴリズム は以下の通りです。

| ルール | アルゴリズム |
|:-:|:–|
| __[ルール1](https://qiita.com/ysgeso/items/bdbcd4c1ab1d8731df58#%E6%9C%80%E5%88%9D%E3%81%AB%E8%A6%8B%E3%81%A4%E3%81%8B%E3%81%A

DockerでGradioを使う

# Dockerは進撃の巨人
##
“Docker”

**それを耳にしたあるエンジニアはうつむき、あるエンジニアは目を輝かせそれに立ち向かう**

そんな**進撃の巨人**のような[Docker](https://knowledge.sakura.ad.jp/13265/)ですが、個人的にやりたいことができたので立ち向かいたい思います。
**※大げさな出だしですが記事の内容はしょぼいです**

# 利用目的
やりたいことは

**『[Magic-Animate](https://github.com/magic-research/magic-animate)などオープンソースのAIソフトをレンタルGPUで動かしたい!』**
です。

[Lambda](https://lambdalabs.com/)などのクラウドGPUサーバを数日借リて、AIツールの実行環境を作成したいのですが、いちいちレンタルの度にあれこれインストール作業をするのが面倒くさいので**Dockerで一発**でできたらなあと思っております。

※環境はWindows11にdockerデスクトップが入っ

“なぜ私たちはいつも締め切りに追われるのか”のリソース分配モデルをscipyで解いてみたよ

# なぜ私たちはいつも締め切りに追われるのか

みなさんはいつも締め切りに追われていますか?僕は追われています。

私たちがいつも締め切りに追われる理由を、研究者の立場から考察した論文があります。それは、AI研究の第一人者である東京大学の松尾豊教授が、2006年に人工知能学会論文誌へ投稿した論文です。その論文では、人間の集中力と仕事量の関係をモデル化し、それに対する締め切りの影響を検討することで、私たちがいつも締め切りに追われる理由を考察しています。

論文中では、集中力と仕事量の関係のモデルをリソース分配モデルと呼び、最大の仕事を与える集中力の関数を最適化問題の最適解として求めています。ここでは、論文の内容をまとめた後に、リソース分配モデルの数値解をPythonのscipyで求めます。

松尾教授の論文は公開されているので、ご興味があれば、ぜひご一読ください。

http://ymatsuo.com/papers/neru.pdf

# 論文の要約[^1]

[^1]:論文は前半でネルー値について、後半でリソース分配モデルについて解説してます。しかし、ネルー値は後半出てこないので、

【pybullet】ロボットにカメラを取り付ける

お疲れ様です。秋並です。

今回は、pybulletのロボットにカメラを取り付ける方法について紹介します。

pybulletではROSとは異なり、ロボットに直接カメラを取り付けるようなことは(恐らく)できません。

そこで、urdfに「カメラ用の仮想的なリンク」を設定することで、「疑似的に」ロボットにカメラを取り付けることにします。

# pybulletにおけるカメラ
まず、pybulletにおけるカメラの扱いについて解説します。
pybulletでは `getCameraImage`という関数を使用することでカメラ画像を取得することが出来ます。
“`
width, height, rgbImg, depthImg, segImg = pybullet.getCameraImage(300,300, viewMatrix, projectionMatrix)
“`
ここで、
– `viewMatrix`は「カメラをどの位置から撮影するか」などの情報が含まれた変数
– `projectionMatrix`は「カメラの設定(どの程度の距離の物体まで撮影するかなど)」に関

Python初心者の備忘録 #12 ~統計学入門編02~

# はじめに
今回私は最近はやりのchatGPTに興味を持ち、深層学習について学んでみたいと思い立ちました!
深層学習といえばPythonということなので、最終的にはPythonを使って深層学習ができるとこまでコツコツと学習していくことにしました。
ただ、勉強するだけではなく少しでもアウトプットをしようということで、備忘録として学習した内容をまとめていこうと思います。
この記事が少しでも誰かの糧になることを願っております!
**※投稿主の環境はWindowsなのでMacの方は多少違う部分が出てくると思いますが、ご了承ください。**
最初の記事:[Python初心者の備忘録 #01](https://qiita.com/Yushin-Tati/items/961dc47d6163f944f7e9)
前の記事:[Python初心者の備忘録 #11 ~統計学入門編01~](https://qiita.com/Yushin-Tati/items/4fab2dbedb5a3211f0ed)
次の記事:まだ

本記事は**確率、正規分布、標準化**についてまとめてあります。
## ■学

django; OSError: No translation files found for default language

タイトルの通り。

“`
OSError: No translation files found for default language
“`

これは`Django`で言語設定が間違っているときのエラー

この公式ドキュメントから飛べる
https://docs.djangoproject.com/en/5.0/ref/settings/

このページにリストが書いてある
http://www.i18nguy.com/unicode/language-identifiers.html

例えば、`settings.py`の言語設定で

“`python
LANGUAGE_CODE = ‘jp’ # NG
“`

とするとエラーになる。正しくは次の通り。

“`python
LANGUAGE_CODE = ‘ja’ # OK => 日本語
“`

VSCodeでPythonインテリセンス(入力補助)を無理やり使う話【備忘録】

# はじめに
この手法はそもそも非推奨かもしれないし、もっといい方法があるかもしれないが”なんか知らんけどとりあえずやりたいことはできた”のでまとめておく。
推奨される方法等があれば教えてくださると助かります。

# 経緯(文句)
個人的にぺちぺちコーディングをしているときに、クラスオブジェクトを引数に渡したりしてこねくり回すことがある。
クラスオブジェクトを引数に渡したりしたときに、デフォだと型がanyになって、インテリセンス(入力補助とかF12で宣言元に飛ぶとか)が効かなくなる。
入力補助はともかく、F12で宣言元に飛べなくなるのはつらいって言うのは共感していただけると思う。
ここでインテリセンスを有効にするためには型ヒントをつけてあげる必要がある。
自分が作った別ファイルに定義しているクラスだと、型ヒントをつけるためだけに行うインポートで、やれ上位のパッケージだ、やれ循環参照だと実行時に余計なおせっかいを焼いて来ることがある。
あくまでインテリセンスを使うためだけにインポートするのであって、実行時にはインポートしなくていいのに、実行エラー出されてもなぁと言うことで、それを回避する

Google の Magika を Python から C#に移植するまでの過程 (Day 7 / 7)

Google のファイル判定プログラム Magika を Python から C# に移植する過程を共有する記事の最終回です。

前回まででようやく一通りの Magika のコードを C# に移植が完了しました。最終回となる今回は、移植した Magika をビルドし、実際にファイル判定を行って動作を確認します。

## 目次
– [Day 1 : まずは Magika の中身を見てみよう](https://qiita.com/mkht/items/64b02b8648266d40380a)
– [Day 2 : C# で 概念実証コードを書いてみる](https://qiita.com/mkht/items/fa76b0238ed976d20ca9)
– [Day 3 : C# クラスライブラリとして Magika を移植していく](https://qiita.com/mkht/items/a7fa36c5446b5fad5092)
– [Day 4 : GitHub Copilot を使って作業効率アップ](https://qiita.com/mkht/items/2c2b23ceb

Google の Magika を Python から C#に移植するまでの過程 (Day 6 / 7)

Google のファイル判定プログラム Magika を Python から C# に移植する過程を共有する記事の第6回目です。

前回までで、.NET クラスライブラリとしての Magika がひとまず完成しました。今回はそのクラスライブラリを使って、実際にファイル判定を行うコンソールアプリを作成していきます。

## 目次
– [Day 1 : まずは Magika の中身を見てみよう](https://qiita.com/mkht/items/64b02b8648266d40380a)
– [Day 2 : C# で 概念実証コードを書いてみる](https://qiita.com/mkht/items/fa76b0238ed976d20ca9)
– [Day 3 : C# クラスライブラリとして Magika を移植していく](https://qiita.com/mkht/items/a7fa36c5446b5fad5092)
– [Day 4 : GitHub Copilot を使って作業効率アップ](https://qiita.com/mkht/items/2c2b23c