Python3関連のことを調べてみた2021年10月27日

Python3関連のことを調べてみた2021年10月27日

C# Python インストール確認 ライブラリ確認

C#からPythonのインストールとライブラリの導入確認をします。

これによってC#からPythonのアプリケーションを適切に起動したりできます。

今後これらを使いC#からPython機械学習アプリケーションを呼び出して、
連携をしていこうと考えているところです。

## 動作環境
Windows 10
Python 3.6.4 Anaconda, Inc.
(環境変数にpythonは追加済み)

## フォルダ構成
“`
AppDir
|_ python
|_ import_check.py (import確認したいライブラリを記載)
|_ app.exe (PythonチェックをするC#アプリケーション)
“`

## ソースコード

### Python (import確認用)
importできるか確認したいライブラリをまとめて記載

“`python:import_check.py
import pandas
import numpy
import opencv
# 他に適宜追加
“`

### C# (Pythonチェックアプリケーション)

元記事を表示

Photoshop 形式のファイルから RichText を取り出して HTML と CSS に変換する – 後編

[前編](https://qiita.com/Kazuya_Murakami/items/ce7a9cc123510798cefd)からの続きです。

psd-tools を利用したスクリプトを実行し、
リッチテキストとして取り出したい PSD (PSB) ファイルを指定すると、HTML+CSS のソースコードと CSV ファイルが作成されるという内容です。

ちなみに、PSD (PSB) ファイルに変更を加えることはありません。

## 動作環境
+ Python 3.5 以上
+ psd-tools-1.9.18(インストール手順は[前編](https://qiita.com/Kazuya_Murakami/items/ce7a9cc123510798cefd)を参照)

## スクリプトの全文
https://github.com/km7902/TextExtractFromPSD

“`Python:TextExtructFromPSD.py
import csv
import os

from decimal import Decimal, ROUND_HALF_UP
fr

元記事を表示

R 事始め(スタートアップ編)

kaggleのコンペは主にRやPythonで記述される。
次回にRを使うときのために備忘録を残します。

## Rインストール手順
公式サイトから各環境に合わせてインストールします。
https://cran.r-project.org/

詳細な方法は以下のページが参考になります。
https://rstudio-education.github.io/hopr/starting.html

## 概要理解

– 動画資料
ざっくり概要つかむのに適しています。

– Rチートシート
こちらの記事で紹介されているチートシートが網羅的でおすすめです。
https://qiita.com/ocean_f/items/b47f21d5c992a03e7465

## Package紹介
使用頻度の高いpackageの紹介があります。
https://www.analyticsvidhya.com/blog/2021/04/top-10-r-packages-for-data-

元記事を表示

Photoshop 形式のファイルから RichText を取り出して HTML と CSS に変換する – 前編

## 本稿の目的
どうも、フロントエンドエンジニアです。
(たまにバックもやります)

さて、HTML コーダーなどをやっていると
「テキストでコーディングしてください!」という依頼を受けることがたまにあります。

以下のような RichText ですが、普通は画像化したほうが早いです。
![sample.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/362854/500ccff8-bf60-f02a-82ff-7f3887800764.png)
[sample_ja.psd](https://github.com/km7902/TextExtractFromPSD/raw/main/sample_ja.psd)

とはいえ、お客様のご要望であればテキスト化します。
これを HTML と CSS で表現すると、以下のようなコードになります。

“`html

100本解説動画6つ

【初心者】AnacondaのインストールとJupyterLabの起動【Windows10】

## はじめに
機械学習/データサイエンスにおけるPython環境構築は、ライブラリの依存関係が強く、インストールに手間がかかり、非常に面倒です。
ここでは、お手軽に環境構築するために、科学計算のためのPythonおよびR言語のディストリビューションであるAnacondaのインストールと、JupyterLabの起動までを説明します。またAnaconda Navigatorを用いた仮想環境の作成方法について説明します。
※この記事では、Windows10を使っています。

## Anacondaのインストール
####1. Anacondaホームページから、Products>Individual Editionへ。
https://www.anaconda.com/

####2. Downloadをクリックしてインストーラーをダウンロードしてください。

デバッグ用:pretty_errors

* インストール

“`
pip install pretty_errors
“`

* 使用

“` python
import pretty_errors
pretty_errors.configure(
  display_locals = True,
  filename_display = pretty_errors.FILENAME_EXTENDED,
)

“`
display_localsは、局部変数を設定する、
filename_display は、ファイルの名を設定する、
他のこと(色など)も設定できる。

* 全局セット

“`
python -m pretty_errors
“`

Pythonで2進数likeな文字列をnumpyにEncodeする

題名通りです.

“`Python
import numpy as np

np.fromiter(‘0101’, dtype=np.int8)
>>> array([0, 1, 0, 1], dtype=int8)
“`

python初心者のはじめの一歩

#環境
windows10
python3.9
エディタ VSCode

#pythonライブラリ [pandas]
pythonにはライブラリが複数ありますが、今回はcsvデータを読み込んで
色々と加工するときに便利なpandasライブラリを使用します。

ライブラリを使用する時には、importを使用。
これは、どの言語でもだいたい同じですね。

“`python
import pandas as pd
“`

#csvデータを読み込んで表示してみよう!

csv読み込みは、pandasライブラリの中の「read_csv」関数を使用します。
csvのパスですが、バックスラッシュと¥記号で、躓きました。

データを読み込んだら、表示するだけです。
表示は、様々な方法があるので、以下をコピペして実行してみてください。

“`python
import pandas as pd

#msg = “Hello World”
#print(msg)

# \\や/に注意!!
# ↓↓ココにハマった
df_population_data = pd.read_csv(‘C:\\User

【厳選】最低限のpandasテクニックを習得できるpandas64本ノック

2021/10/26 (最終更新日: 2021/10/26)

# はじめに
機械学習を勉強しようと思ったらまずpandasの基礎を固めるのが機械学習エンジニアへの近道!
そこでpandasを勉強しようと思い調べるとpandas100本ノックなるものがたくさん出てきますね。

私もいくつか利用してpandasを学んできましたが、問題数を100本に満たすために同じような問題やpandasではないライブラリの問題が混ざったりしていたので今回は純粋なpandasノックを作成してみました。

全部で64問。
問題はipynbファイルにて作成しております。
各問いには見出しがついているので辞書のようにpandasでわからないことを調べることもできるように作りました。

問題はgithub上(以下URL)に公開しています。
URL: https://github.com/gotty21/basic_pandas-64-knocks

自分の学習環境上にcolneして利用していただければと思います。

# 使い方
cloneしてきたフォルダ内には以下が入っています。

|名前|説明|
|—-

【YOLOv5】マスクの物体検出

# はじめに
YOLOv5を用いての物体検知について勉強したので、マスクを着用しているかどうかを検出するモデルを作成してみました。

# ライブラリの準備

今回は、pytorchで書かれたyolo v5を用いるので、以下のコマンドでgitからクローンしてきます。
pythonのバージョンは`3.8`以上だと良いみたいです。

“`
$ git clone https://github.com/ultralytics/yolov5.git
“`
次に、必要なライブラリをインストールします。

“`
$ cd yolo5
$ pip install -r requirements.txt
“`

# データの準備

アノテーション済みのマスク画像データを提供している[Mask Wearing Dataset](https://public.roboflow.com/object-detection/mask-wearing)からデータをダウンロードします。
ダウンロードボタンを押して、以下の画像のように、`YOLO Darknet`を選択します。
![スクリーンショット 2021

ターミナルからPythonパッケージの依存関係を探すコマンドを作ってみた

## はじめに
 Pythonには多くのパッケージがありますね。そのパッケージを管理するためにpipを使っている人も多いのではないでしょうか。pipは簡単にパッケージを導入できるシステムですが、パッケージ同士の依存関係がわからない!なんてことに直面したことはありませんか?~~(私はあります。)~~

 インストール済みのパッケージなら、ターミナルから調べることができますが、インストールしてあるかどうかに関わらずうまく調べる方法はないものか?と思い、シェルコマンドを作ってみました。

## 環境
* MacBook Pro 2017
* macOS Big Sur 11.6
* Python 3.10.0
* Z Shell 5.8

## インストール済みのパッケージの依存関係を調べる

 復習にはなりますが、インストール済みのパッケージの依存関係は、ターミナルから次のように調べることができます。

“`zsh:terminal
$ pip3 show <パッケージ名>
“`

 例として、numpyについて調べてみると、以下のように出力され

django transaction.atomic() + 自前エラークラス

を書くんだよ

tryの中でこけると、user.save()はrollbackされる。
うまくいったところだけ保存したいならwith transaction.atomic()は外す

“`python

class UserNameError(BaseException):
“”” UserName must contain two ‘@’ s. An example is ‘MailAddress@Organization_name'”””
pass

if organization.name != params[“name”]:
users = User.objects.filter(organization_id=organization_id)
try:
with transaction.atomic():
for user in users:
user_name = user.username

【Python3】0から作るPython初心者プログラミング【02】-じゃんけんプログラムをクラス化する-

#【ご挨拶】こんにちは! ぬかさんエンジニアリングです。(2回目‼)
前回の投稿にありがたいことにコメントを頂きまして、じゃんけんプログラムをより簡潔に書ける方法を教えていただきました。
今回はそれらの内容も含めてじゃんけんプログラムを**関数化**、そして**クラス化**というように**進化**させていく内容になっています!
普段クラスから作っているという方も、順を追ってみていくことで**関数とクラスの便利さに気づけるような構成**になっていますので最後まで見て頂けると嬉しいです!
**LGTM**も是非宜しくお願い致します‼

#本シリーズ初めての方へ

【趣旨】

Python初心者プログラマーが入門書で学ん

バッチ処理にCloud Runを使用する時にタイムアウトを乗り越える

自分の周囲でCloud Run熱が高まっているようなのですが、それに乗っかるためにやってみた系の記事です。
Cloud Runでバッチ処理をする際に気になってしまうタイムアウトについて、中断時点から容易に再開できるpythonのgokartというライブラリとCloud Tasksで気にしなくて済むようにしようという試みです。(新規性はわかりません)

コードはこちら
https://github.com/Ryusuketa/cloud-run-long-batch

## Cloud Runをバッチ処理に利用する
意外とバッチでのデータ処理をいい感じにクラウド上で動かしてくれるサービスがあんまりありません。
そこそこ複雑な処理を書くにはGCPのCloud Workflowsでは物足りず、
甘ったれ園児ニアとしてはデータ処理に向いたPythonでぺっと自由に処理を書いてDocker imageに依存もパッケージングしてデプロイしていい感じに動いていて欲しいです。App EngineやEBもやりたいことに対して手間だなってレベルの園児です。
また実行頻度とコストの兼ね合いで、インスタンスを

pipインストール手順

#環境
windows10
python3.9
エディタ VSCode

#事象
pythonをインストールしたが、pipがインストールできていなかった。
[No module named pip]とあるが、python3.4以上は、pipは自動インストールでは?と非常に悩んだ。
調査するとpowerShellは最新のバージョンにアップデートしてみると良いとあったので、
最新にしてみた。

python3.9 の保存場所は以下。
C:\Users\xxx\AppData\Local\Programs\Python\Python39\python.exe

“`python:コマンドプロンプト
>python –version
Python 3.9.2

> py -m pip install
C:\Users\xxx\AppData\Local\Programs\Python\Python39\python.exe: No module named pip
PS C:\Users\xxx\AppData\Local\Programs\Python\Python39> pip lis

2つのPyTorchモデルの重みの平均を計算する

# はじめに
PyTorchの2つの機械学習モデルの重みを平均してみました。

モデルの`state_dict`を取得することで、パラメータに直接計算を加えることができます。

# 環境
* Python 3.9.5
* torch 1.9.0+cu111
* torchvision 0.10.0+cu111

# 準備
モデル同士の足し算と、モデルの定数倍を行う関数を定義。

### モデル同士の足し算
“`Python:sum_model.py
def sum_model_params(modelA, modelB):
“”” modelA + modelB “””
sdA = modelA.state_dict()
sdB = modelB.state_dict()
for key in sdA:
sdB[key] = (sdB[key] + sdA[key])
modelB.load_state_dict(sdB)
return modelB
“`

### モデルの定数倍
“`Python:milti_

Pythonでsuumoの検索結果を自動でスクショする

#概要
suumoの検索結果で出てきた物件の詳細画面を自動でスクショする機能を作りました。

#環境/使用技術
macOS Mojave
Python 3.7.5
chromedriver
selenium

#事前準備

##seleniumをインストール

“`
pip install selenium
“`

##ChromeDriverをインストール
chromedriverをブラウザのバージョンと合わせる必要あります。

“`
pip install chromedriver-binary==94.0.4606.61
“`

参考
https://blog.lowaivill.com/python/chromedriver-change-version/

#ソース

“`chrome.py
import chromedriver_binary
from selenium import webdriver

driver = webdriver.Chrome()

# suumoの検索結果URLを格納する
# 渋谷区のオススメ上位30件の検索結果URLを格納
url

【Windows】Python3.10のインストール(パス通し)

## はじめに

2021年 10 月上旬からPython3.10が使用可能になってます。
長らくPython3.9を使用していました。しかし、新しいバーションにも
対応したいということで、最新版をインストールする流れになりました。

その時のメモ書きです。

## ダウンロード&インストール

Pythonをインストールするために適当にググります。
「Download Python」でもいいのですが、
「Windows版Pythonのインストール:Python環境構築ガイド」が分かりやすかったです。

![ググる](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/577794/1b261c1f-bfac-bcbf-fcd0-fab3602dbdd5.png)

https://www.python.jp/install/windows/install.html

解説が画像付きで非常に分かりやすく、簡単にインストールできます。
善きかな。

ちなみに、インストールの説明で「パスを通す設定にすること」が強調されてい

AtCoder Beginner Contest 224

##[A – Tires](https://atcoder.jp/contests/abc224/tasks/abc224_a)

O(1)

“`C++:C++
#include

#define rep(i,n) for(int i=0; i<(n); ++i) #define fixed_setprecision(n) fixed << setprecision((n)) #define execution_time(ti) printf("Execution Time: %.4lf sec\n", 1.0 * (clock() - ti) / CLOCKS_PER_SEC); #define pai 3.1415926535897932384 #define NUM_MAX 2e18 #define NUM_MIN -1e9 using namespace std; using ll = long long; using P = pair;
template inline bool chmax(T& a

Python C# データ連携

こんにちは、本日はPythonとC#間でデータのやり取りをする方法を紹介します。
使用する技術は「共有メモリ」です。

## 動作の仕組み

1. Pythonで名前付き共有メモリの作成
2. C#でPythonで作成した共有メモリを開く
3. 相互にデータの読み書きを実施

## 環境

**Windows10**
※名前付き共有メモリを利用するにはWindowsOSを利用する必要があります。

pythonでの名前付き共有メモリはWindowsでしか利用できません。。。
「tagname」の引数が共有メモリの名前です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/586845/8a76893d-5bc1-5172-7fda-8908e7e27605.png)

Linux、Macなどでは無名の共有メモリを利用するか、
ファイルベースの共有メモリを利用するしかできません。

## ソースコード

今回のプログラムはPythonで共有メモリの1WORD目の値をインクリメントしてい