Python関連のことを調べてみた2022年12月03日

Python関連のことを調べてみた2022年12月03日

ブラウザから受けたっと CSV を AWS 複数の S3 へ upload しようとして少しハマった件

#### vue から取得した csv ファイルを複数の s3 バケットへ送ろうとしたらできなかった。

## 結論
– s3.put_object で複数を取得してもブラウザから受けったファイルの場合はエラーになるので、 s3.copy_object で複数のバケットへ送った。

– 以下スクリプトメモ
“`py:python
def xxx():
# アップロードファイルを取得 –> ここは vue からの通常の受け取り方
uploaded_file = request.files[‘file’]

# S3アップロード処理
s3 = boto3.client(‘s3’,
aws_access_key_id=os.environ.get(“ACCESS_KEY”),
aws_secret_access_key=os.environ.get(“SECRET_KEY”),
)

bucket_name = “XXX”
s3.put_object(Bucket=bucket_name, Key=

元記事を表示

【Python】東京の生ビールは高すぎる!!

# はじめに
こんにちは

**Advent Calendar 2022**

始まりましたね。私、初めての参加となり、非常に**ワクワク**しとります。
まだ埋まってない日程があったりと不安はありますが、せっかくなので**みんなで楽しんで記事を書いて走り切りたい気持ち**です。

**では3日目、行きましょう!**

:::note info
この記事は [TLB Enjoy Developers Advent Calendar 2022](https://qiita.com/advent-calendar/2022/tlb-enjoy) の3日目の記事です。
:::

**さて今回の記事ですが、もう時が経つのも早いもので2022年も残り1ヶ月を切りました**

#### 師走といえばやっぱり忘年会

#### 忘年会といえば飲み会

#### 飲み会といえば…

### ビールですよね?

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/873426/ed67f3ed-f6a1-

元記事を表示

自作モジュールをimportする

私が認識しているやり方は4つです(他にもあるかもですが)

1.pythonファイル内にパスを指定してimportする
2.PYTHONPATHという環境変数を定義し、そこにpythonファイルを入れてimportする
3.site-packagesディレクトリにpythonファイルを入れてimportする
4.sys.path.appendを使いパスを指定してimportする

です。
その時々の用途に沿った方法でimportをどうぞ!

1.パスを指定してimportする

“`
#ディレクトリ構造
.
├── call.py
└── my_module_dir
└── my_module.py
“`
↓importしたいpythonファイル
“`my_module.py
def test():
print(‘This is my_module.py.’)
“`
↓実行するpythonファイル
“`call.py
#カレントディレクトリにあるmoduleが入ったディレクトリと
#pythonファイル名を指定
from my_module_

元記事を表示

mypy駆動リファクタリング

## はじめに

Pythonは動的型付けのプログラミング言語です。そのため、実行時に型に関するチェックが実行されません。その結果、“動的型付けであるがゆえに問題がない処理”が存在してしまいます。それらは、ある時点で外部から観測される振る舞いに問題がなかったとしても、リリースを重ねていくうちにに不具合として顕在化する可能性があります。

そのような処理に対して、mypyによりコードにおけるリファクタリングをすると良い箇所を特定できます。mypyはPythonで静的型チェックを実行するツールです。

https://mypy.readthedocs.io/en/stable/

例えば、以下に該当するような、コードの検知が可能です。

– 型ヒントの不足
– 型の矛盾

つまり、mypyの出力に基づくリファクタリングでは以下の効果が期待されます。

– 処理の内容を型ヒントで補足することによる可読性の向上(潜在的な不具合を埋め込む可能性の解消)
– 型が矛盾している処理を修正することによる堅牢性の向上(潜在的な不具合の解消)

本記事では、このようなmypyの出力に基づくリファクタリング

元記事を表示

ChatGPTでロボットのコード生成はできるのか?

# はじめに
基盤モデル×RoboticsのAdventCalendarの3日目です!
カレンダーものぞいてみてくださいー!
https://qiita.com/advent-calendar/2022/robot-ai

では、本題へ!

### ChatGPTとは
OpenAIが開発するGPT-3(※)という大規模言語モデルをベースとしたチャットアプリです。
実際のにどんな事ができるか見てみましょう!

https://chat.openai.com/chat

## ChatGPTに聞いてみよう!
### ChatGPTにChatGPTについて聞く
![Screenshot from 2022-12-03 07-18-34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/351913/a80dfd17-1f97-e551-9c19-397ebcd6f374.png)

### ChatGPTにChatGPTのデメリットについて聞く
![Screenshot from 2022-12-03 07-21

元記事を表示

Azure AutoMLで作ったモデルをPythonから推論してみた

# はじめに
前回KaggleのTPSコンペのデータを用いてAzure Auto MLからモデルを作成しましたが、(前回の記事は[こちら](https://qiita.com/kkawano_neko/items/39f0af1429b27ab636ca))これを今度はPythonから推論してみようと思います。

# 開発環境
+ OS Windows 10(NVIDIA GTX 1650Ti,16GB RAM, i5-10300H CPU)
+ Visual Studio Code 1.73.1
+ Python 3.9

# 実行してみます!
モデルを作成するところで終わっていたので、まずはデプロイするところからやってみます。

## デプロイ
「モデル」タグから一番精度の良いものを選択し、
![automl2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2976188/eca4f80b-cbbd-7194-6924-c2c0a17499c2.png)

「デプロイ」をクリックします。

![im

元記事を表示

【imgsim】イケメン判定AIアプリ作ってみた。

こんにちは。AIゴミアプリを1人で作るAdvent Calendar3日目の記事です。今回はイケメン判定AIアプリです。
自分の顔がイケメンかどうかをジャッジしてくれるAIアプリ作ります。

# はじめに
画像を入力して、イケメンであるかどうかをTrueで返すアプリケーションを作ります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2952830/d0955187-4a6a-386a-022c-9d3d91f3bb18.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2952830/77e2e736-4cb1-bba5-187c-7b8775878b31.png)

ソースコードはこちら
https://github.com/Kentea-Watanabe/Handsome_judgement

# 使うもの
– Yolov5で顔部分のみでCropします。
– imgs

元記事を表示

これから始める人向け Google Colaboratoryの操作方法

Google Colaboratory(Colab)の使い方について2022年12月現在でまとめてみました。
本記事は、Jupyter Notebookは多少使ったことはあるけど(コードセル(Ptyhonコード)やテキストセル(markdown)はある程度理解している)、Colabを初めて使う方をターゲットにしています。

# Colabの始め方

Googleコラボのインストールは、以下の手順で簡単に行えます。

+ Googleアカウトを作成(まだ持っていない場合)
+ Googleドライブ上で左上のメニューから「アプリで開く」->「アプリを追加」で、Googleコラボを選んでインストール

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1413278/5da58c21-830f-4628-08ca-c01eaff6c0fa.png)

+ Github等からアップロードしたNotebookファイル(.ipynb)を実行すると

元記事を表示

【備忘録】コールバック関数とは

## 背景
Flaskの学習中にログイン処理のなかでuser_loaderというコールバック関数を使った処理が必要になりました。コールバック関数に関して深く理解していなかったのでアウトプットを兼ねて記事にしました。
ちなみに、今回参考しにしたこちらの動画がめちゃくちゃわかりやすかったので是非みてください。今回はこの動画とほぼ同じ説明手順をたどりますのでご了承ください。

## コールバック関数とは
呼び出された関数側で呼び戻される、呼び出し元が指定した別の関数のこと
これだけだと意味がわからないので具体例を使って説明します。

## 具体例
ある配列を引数に取り、特定の要素のみを抽出した新しい配列を返す関数check_array()を考えます。例えば、配列の中から10以上の要素のみを取り出す場合は次のようになります。

“`python:check_array()
def check_array(before_array):
after_array = []

for element in before_array:
if element >= 10:
a

元記事を表示

FastAPI with Django ORM and Admin

# はじめに
Pythonが大好きな豊田工業高等専門学校の加藤愛斗です。
**DjangoのAdmin, ORM機能を用いつつ、API周りはFastAPIを用いてサーバーを実装出来るように**しましたので紹介します。

# はじまり
## プログラミングは手段
私がプログラミングをする理由は、**何か作りたいものがあってそれを形にしたいから**です。そのため、プログラミングはただの手段と捉えています。

## 最初に身に着けた技術
私が**初めて触ったプログラミング言語はPython**で、それ以来ずっとPythonでコンテストやインターンを行っていまいます。そして、**サーバーサイドを書く際はよくDjangoを使用**しています。これは、初めて触ったフレームワークがDjangoであり、インターン先でもDjnago+DRFで開発をしていたからです。

## Djangoのデメリット
しかし、Djangoにはいくつかのデメリットがあります。
– API開発にあまり向いていない
– DRFは必須
– DRFを使用しても複雑・冗長になりがちである
– **遅い**
– cf. h

元記事を表示

【3日目】サーバーサイドの環境構築②【PythonでDiscordBOTを作ろう!】

# サーバーサイドの環境構築

今日は、実際にサーバーサイドの環境構築を行っていきます。

サーバーサイドは、マシンが存在して、OSがすでにインストールされているものとします。

SSHを使って環境構築を行っていきます。

## Pythonのインストール

昨日の記事で記載したようにLinuxでの環境構築を想定しております。
Linuxでのインストールは各ディストリビューションのパッケージマネージャーを使用します。

“`sh
# Debian派生
$ sudo apt-get install python3

# Red Hat派生
$ sudo yum install python3

# SUSE派生
$ sudo zypper install python3
“`

これらのコマンドを使用することで~~きっと~~インストールできます。

(WindowsやmacOSであれば、[こちら](https://www.python.org)からPythonをダウンロード/インストールすることが出来ます。)

とりあえずインストール出来たら、ちゃんと動くか確認してみましょう。

`

元記事を表示

【画像認識】AIひろゆきがスプラトゥーン3のキルデス報告してくれるアプリ作った話

# TL;DR
この投稿はOpenCV Advent Calendar 2022の3日目の投稿です!

Python + OpenCVを利用して、ニンテンドーSwitchに接続したキャプチャボードからスプラトゥーンの映像を取得・解析し**ひろゆきがキルデス報告くれるアプリを作りました**。

通話しながらの対抗戦でよくある「スシやり」等のキル報告や、スペシャルの報告を**例のAIひろゆき**が読み上げてくれます。まるでひろゆきと一緒にスプラをプレイしているような感覚を楽しめるというアプリです。ついでに各プレイヤーの生存秒数ゲージ、デス回数カウンター、復帰までの推定予測ガイド等を視覚化するGUIも実装しました