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

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

BIKE SHARING DEMAND データ分析:簡略版

専門実践教育訓練講座の最終成果物として記事作成。
Kaggleの上位3%以下という結果。
講座修了の合否に使用される記事は順序立て・考察等で冗長な為、簡略版を改めて作成。
本記事は本質的なところと結果を示す。
講座修了用の「冗長なバージョン」はこちら:

https://qiita.com/SumMae/items/f0f221735f94c06c609e

# 目次
– [**はじめに~記事概略まとめ**](#はじめに記事概略まとめ)
– [**分析環境**](#分析環境)
– [**テーマについて**](#テーマについて)
– [Bike Sharing Demand 概略](#bike-sharing-demand-概略)
– [分析用データ](#分析用データ)
– [評価指標](#評価指標)
– [目標値設定](#目標値設定)
– [目標RMSLE値について掘り下げ](#目標rmsle値について掘り下げ)
– [**データ分析1:データ確認**](#データ分析1データ確認)

元記事を表示

FastAPIで簡単なリアルタイムチャットの仕組みを作る

## はじめに
はいどうも、たねだです。
相変わらずPythonの勉強をしています。

さて、今回はFastAPIを使って最小限の機能を備えたリアルタイムチャットの仕組みを作りました。
引き続きQiitaに掲載していくかどうかはさておき、今後さらに内容をアップデートしていきたいと思った仕組みになったので
ちょっとしたプロトタイプとして記事に残そうと思います。
ただ、実際に中身を作ったのは少し前のことなので忘れているところもあるかもしれませんがあしからず。

また、いつも通り今回の内容も公開リポジトリを置いてますので、
よかったらこちらもご覧いただければと思います。

https://github.com/t4ned4/realtime-chat-system/tree/main

## さっそく作っていく

今回も`Python3.12.4`でつくっていきます。
私の記憶が正しければ、特別に構築したような環境はなかったと思います。

特に今回はほぼ最小単位でつくりますのでディレクトリ構成も下記の通り非常にコンパクトです。
![image.png](https://qiita-image

元記事を表示

【Python】venvを利用した仮想環境

# はじめに

最近現職の同期と勉強がてらアプリ制作を始めました。
そこで初めてPythonを触って仮想環境なるものを知りました。
今回はvenvを利用した仮想環境の作成方法について備忘録として残します。

# 環境
– macOS: 15.0(24A335)
– Python: 3.12.5 (グローバル)
– Visual Studio Code : 1.93.0 (Universal)

# Pythonの仮想環境とは?

自身のPC上で、独立したPythonの実行環境を作成する仕組み。
下記のようなメリットがあるようです。

> (1)環境ごとに異なるバージョンのPythonを使える
> (2)環境ごとに異なる外部ライブラリをインストールできる
> (3)環境ごとに異なるバージョンの外部ライブラリをインストールできる

引用元: [実務で必須の「Python仮想環境」について学ぼう!](https://www.insource.co.jp/python-gakuin/mail-backnumber/vol30.html)

# 仮想環境の作成と利用方法
仮想環境を作成する方法は

元記事を表示

お酒の画像をCNNに学習させてみる

## はじめに
[前回の記事](https://qiita.com/cnysntry/items/448d592c8d317de1b9f6)で少ない画像データを平行移動や回転などを行い増やす手段について記載しました。今回はその増やしたお酒の画像データをCNNに学習させ、ディープラーニングでどこまで正確に判断できるかについて試してみました。

## お酒画像を学習させる
まずは、以下の8種類のお酒画像を各10枚ずつ準備し、[前回の記事](https://qiita.com/cnysntry/items/448d592c8d317de1b9f6)の方法を使ってデータ拡張してCNNで学習させてみました。

lagavulin
bowmore
caolila
kilchoman
bunnahabhain
bruichladdich
ardbeg
laphroaig

その結果は以下の通りとなりました。
![isla_10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3750854/864111d9-6e0b-

元記事を表示

【備忘録】Python×Seleniumでデータ収集を自動化

# はじめに
Pythonの「requests」と「bs4(beautifulsoup)」を使って、ウェブサイトからデータをスクレイピングしようとしましたが、そのサイトは動的にデータを表示するタイプだったため、思うようにデータを取得することができませんでした。

そこで、「Selenium」を試したところ、うまくスクレイピングができましたので、備忘録として「Python × Selenium」を使ったスクレイピングの方法をまとめておきたいと思います。

# 想定する読者
* Python × Seleniumでデータ収集を自動化したい方

# Seleniumとは?
Seleniumは、ウェブブラウザを自動で操作するためのオープンソースのテスト自動化ツールです。ウェブアプリケーションの機能テストやスクレイピング、ブラウザ操作の自動化に使用されます。

Seleniumは、開発者やテスターが実際にブラウザを使って行う操作をプログラムでシミュレートすることができます。

**主な特徴**
1. ブラウザ自動操作
* Seleniumを使用すると、ブラウザで行う操作(ページの読み込

元記事を表示

Output練習のためProjectEulerを解いてみる #1

本日から、コーディング力の向上とアウトプットする力を高めるために、毎週一問ProjectEulerの問題を解いてみようと思います。いろいろ至らない点もあると思いますが、ご容赦いただければと思います。
# ProjectEulerとは
数学の問題をプログラムを用いて解くサイトです。最初の100問までは答えを掲載してもよいという規則があるので、そこまで記事を書くことを目指していこうと思います。

#### マイルール
– 拡張性を持たせる
 条件として、N <= 1000000 とかがあるのですが、その条件を厳しくしても成り立つようなコードを書いていこうと思います
– 一つのコードで完結させる
 前処理とかが必要な問題でも、なるたけ一つのコードで完結させるようなコードを書きたいと思います。
– 読みやすいコードを書く
基本的には、コーディング規約とリーダブルコードに従ったコードを書いていきます。

では早速解いていこうと思います。
# #1 Multiples of 3 or 5
問題文 If we list all the natural numbers below 10 that ar

元記事を表示

【Python】unicodedata.normalize(‘NFKC’)について。互換分解してから再度合成するとは?

# 概要
Pythonの`unicodedata.normalize`の`NFKC`を使ってみたので、サンプルコードと共に紹介します。

# Unicodeの正規化のNFKCとは?

`unicodedata.normalize`は、そのまま「Unicodeの正規化」という意味です。
[Wikipedia](https://ja.wikipedia.org/wiki/Unicode%E6%AD%A3%E8%A6%8F%E5%8C%96)は以下のように説明されています。

> Unicode正規化(ユニコードせいきか、英語: Unicode normalization)とは、等価な文字や文字の並びを統一的な内部表現に変換することでテキストの比較を容易にする、テキスト正規化処理の一種である。

Pythonで使う`unicodedata`モジュールとは、Unicode文字列を正規化するためのライブラリ(関数)です。

また、`NKFC`について、[公式ドキュメント]()には以下のように記載がありました。

> 正規形 KC (NFKC) は、互換分解を適用してから、標準分解を適用します。

元記事を表示

フラクトゥーア(フラクトゥール,亀甲文字,ブラックレター)を26アルファベットに変換するPythonコード(Pythonista 3対応)

# はじめの前のおねがい
できれば「いいね♡」をお願いします。励みになります。

# はじめに
このコードは**Python 3**と**Pythonista 3**に対応しています。本コードはクリップボード内にある通常のアルファベット(ä, ö, üなどには未対応)をUnicodeに用意されているフラクトゥア(亀甲文字,ブラックレター)に変換するコードです。

# 本コードを実行するとどうなるか
本コードは
1. クリップボード内のある通常のアルファベットを検知
1. Unicodeに用意されているフラクトゥア(亀甲文字,ブラックレター)に変換
1. クリップボードに再コピー

を行います。

# 例
実行前のクリップボード:
𝔚𝔢𝔩𝔠𝔬𝔪𝔢 𝔱𝔬 𝔱𝔥𝔢 𝔈𝔫𝔤𝔩𝔦𝔰𝔥-𝔩𝔞𝔫𝔤𝔲𝔞𝔤𝔢 𝔚𝔦𝔨𝔱𝔦𝔬𝔫𝔞𝔯𝔶, 𝔞 𝔠𝔬𝔩𝔩𝔞𝔟𝔬𝔯𝔞𝔱𝔦𝔳𝔢 𝔭𝔯𝔬𝔧𝔢𝔠𝔱 𝔱𝔬 𝔭𝔯𝔬𝔡𝔲𝔠𝔢 𝔞 𝔣𝔯𝔢𝔢-𝔠𝔬𝔫𝔱𝔢𝔫𝔱 𝔪𝔲𝔩𝔱𝔦𝔩𝔦𝔫𝔤𝔲𝔞𝔩 𝔡𝔦𝔠𝔱𝔦𝔬𝔫𝔞𝔯𝔶. ℑ𝔱 𝔞𝔦𝔪𝔰 𝔱𝔬 𝔡𝔢𝔰𝔠𝔯𝔦𝔟𝔢 𝔞𝔩𝔩 𝔴𝔬𝔯𝔡𝔰 𝔬𝔣 𝔞𝔩𝔩 𝔩𝔞𝔫𝔤𝔲𝔞𝔤𝔢𝔰 𝔲𝔰𝔦𝔫𝔤 𝔡𝔢𝔣𝔦𝔫𝔦𝔱𝔦𝔬

元記事を表示

26アルファベットをフラクトゥーア(フラクトゥール,亀甲文字,ブラックレター)に変換するPythonコード(Pythonista 3対応)

# はじめの前のおねがい
できれば「いいね♡」をお願いします。励みになります。

# はじめに
このコードは**Python 3**と**Pythonista 3**に対応しています。本コードはクリップボード内にある通常のアルファベット(ä, ö, üなどには未対応)をUnicodeに用意されているフラクトゥア(亀甲文字,ブラックレター)に変換するコードです。

# 本コードを実行するとどうなるか
本コードは
1. クリップボード内のある通常のアルファベットを検知
1. Unicodeに用意されているフラクトゥア(亀甲文字,ブラックレター)に変換
1. クリップボードに再コピー

を行います。

# 例
実行前のクリップボード:
Welcome to the English-language Wiktionary, a collaborative project to produce a free-content multilingual dictionary. It aims to describe all words of all languages using definitio

元記事を表示

Pythonで『The MagPi』の全号を一括ダウンロードするスクリプト

「The MagPi」は、Raspberry Piに関する情報を提供するマガジンです。チュートリアル、プロジェクトのアイデア、最新情報などを掲載し、コーディングやロボティクス、DIYエレクトロニクスに興味のある人々にとって役立つ内容が満載です。

The MagPi” のPDFは公式サイトで無料でダウンロードできます。最新号からバックナンバーまで、Raspberry Piに関する様々な記事やプロジェクトが掲載されています。公式サイトを訪れて、直接ダウンロードしてください。

Link: https://magpi.raspberrypi.com/issues

“`python:download_magpi_all_issues.py
# 『The MagPi』雑誌の全号を一括ダウンロードするPythonスクリプト
import webbrowser
from time import sleep as wait

# 1から144までの範囲でループを実行
for i in range(1, 145):
# 号のダウンロードURLを生成
url = f”https://

元記事を表示

スマートリモコンをChatGPT(Function Calling)を使ってよりスマートにしよう!

# スマートリモコンをよりスマートに!?
 声から操作ができてしまうスマートリモコンですが、文脈から意図を認識するというところまでではないようです。そこで、今回はChatGPTのFunction Callingと呼ばれる機能を使って、人の意図をくみ取って、家電を操作してくれる装置を作ってみたいと思います。
 実際の処理の流れとしては、以下になります。
1. プロンプトをChatGPTのAPIへ渡し、GPTにどの家電をどのように操作するのか判断してもらう(今回)
2. ChatGPTの判断結果から、ラズパイが赤外線で家電を操作

 今回はプロンプトを入力して、特定のスクリプトをたたくところまでのポイントとなった部分を紹介します。実際のコードは、GitHubにあげています。(https://github.com/arumi123/homebridge/tree/develop)

また、結果だけ見たいという方は、実際に呼び出してみよう!まで進んでください。

# Function Callingとは
 人が入力した文字列(プロンプト)から、ChatGptが意図を読み取り必要な関数やAPIを

元記事を表示

EC2 amazon linux にPythonを入れてみよう 入門

AWS EC2 インスタンスに Python をインストールする方法について説明します。以下の手順に従ってください。

### Amazon Linux 2 の場合

1. **パッケージリストの更新**:
“`bash
sudo yum update -y
“`

2. **Python 3 のインストール**:
“`bash
sudo yum install python3 -y
“`

### Ubuntu の場合

1. **パッケージリストの更新**:
“`bash
sudo apt update
“`

2. **Python 3 のインストール**:
“`bash
sudo apt install python3 -y
“`

3. **pip のインストール**:
“`bash
sudo apt install python3-pip -y
“`

### Python と pip のバージョン確認

インストールが完了したら、以下のコマンドでバージョンを確認で

元記事を表示

obsws-pythonのテキスト編集で沼った話

## obsws-pythonとは
obsws-pythonとは、OBS StudioのWeb Socketを使って
プログラムから色々なOBS上の操作ができるライブラリです。

https://pypi.org/project/obsws-python/1.1.0/

…と言っても[当該ライブラリのGitHub](https://github.com/obsproject/obs-websocket/blob/master/docs/generated/protocol.md)を見てもいまいちわからなかった上に日本語の情報がかなり少なかったので非常に沼りました。
本記事では数ある機能の中でも主に**テキストソースの編集**にフォーカスして、私が確認できた内容を残そうと思います。

`obsws-python`は以下でインストール可能です。
“`bash
pip install obsws-python
“`

:::note info
結果だけ知りたい方はGitHubに概要とコードサンプルを載せているので[こちら](https://github.com/t4ned4/obsws-

元記事を表示

[自分用]Xで指定したテキストを含むハッシュタグ付き等の投稿を検索・取得する

# 細々した話

## Basicプランの課金タイミングについての注意

1ヶ月100ドルと書いてあったが、登録したらそこで「1ヶ月分」課金されるわけではなかった(2024年9月時点での報告)。

* 最初に1週間分課金された(日割り)。
* 1週間後に1ヶ月分課金された。

クレジットカードの締日と相談して経理系の手続きを行う場合は注意。

## 事前設定

APPを作ること。

必要な認証系の情報は、 「Apps」の個別アプリの「Keys and tokens」リンク(鍵マーク)で行けるページから作成・取得できる。
* API Key and Secret (Consumer Keysの下)
* Bearer Token(Authentication Tokensの下)
* Access Token and Secret (Authentication Tokensの下)

※ User authentication settingsはデータ取得のみなら設定不要かと思われる。

## Searchの注意点(Basicプラン)

https://developer.x.com/

元記事を表示

LinuxでPythonの仮想環境(venv)を作る方法

# 仮想環境(venv)とは
venvはPythonの仮想環境を作成する仕組みで、Pythonをインストールすると標準で利用できます。

用途としては、プロジェクト別にインストールしたいパッケージを分けるときです。使っていきましょう。

# Linuxでvenvを作成してvenv使用する
“`bash:terminal
$ python3.9 -m venv (venvディレクトリ名) # 仮想環境を作成する
“`
このコマンドでvenvの環境が(venvディレクトリ名)に作成されます。

“`bash:terminal
$ source (venvディレクトリ名)/bin/activate # 仮想環境に入る(有効化)する
“`
とsouceするとターミナルの先頭に括弧書きで使用している仮想環境の名前が表示されます。

“`bash:terminal
$ which python # pythonのpathを表示
(venvディレクトリのPATH)/bin/python
“`
と表示されていればOKです。

仮想環境を抜ける(無効化)するにはdeactivateコマン

元記事を表示

はじめてのPytest

### テストコードをさくっと学んだので自分用のメモを残す


### Documents
[Pytest](“https://docs.pytest.org/en/stable/getting-started.html#get-started”)

[GitHub](“https://github.com/pytest-dev/pytest/”)


### Installation
“`
pip install pytest
“`

### まずは関数をテストする。

src >> testするファイルを格納

“`
# src/code.py
def sum_numbers(a, b):
return a + b
“`

tests >> testcodeを格納するフォルダ
from folder_name import fileName
“`
# tests/test_1.py
from src import code

def test_1():
result = code.sum_numbers(1, 2)

元記事を表示

めも(WIN10)

### SCOOP を使ってPython をInstallする

“`
#Power Shell
scoop install python
“`

“`
python3 -V
#Python 3.12.2
“`

“`
#Power Shell
mkdir Pyenv
“`

“`
# python -m venv


python -m venv C:\Users\UserName\Pyenv
“`

#### Script直下にActivate.ps1がある事を確認してActivate.ps1を実行する(仮想環境が有効になる)
“`
Scripts\activate.ps1
“`

“`
CREATE TABLE shuzen_list (
id TEXT,
工事No TEXT,
工事内容 TEXT,
建物名 TEXT,
場所 TEXT,
受付日 TEXT,
工事完了日 TEXT,
売価予定金額 INTEGER,
売価合計 INTEGER,

元記事を表示

Python3 エンジニア認定基礎試験 合格体験記

# 初めに
Python3 エンジニア認定基礎試験に受かりました。
前回のAWS SAAを受験してから大体10日ほどでの合格になります。
受験経緯としてはPythonを触れてみたいなと思ったときに、せっかくなら資格でも取ってみようかなと思ったのがきっかけになります。ついでに資格手当ももらえるからですね。資格手当はとても偉大です。

# 試験の概要
受験料金:1万円(税別) 学割5千円(税別)
問題数:40問(すべて選択問題)
合格ライン:正答率70%
試験の詳細は下記になります。
[Python3エンジニア認定基礎試験](https://www.pythonic-exam.com/exam)

# 使用教材
* ExamApp
→知識の確認に使いました。初級、中級、上級とありますが中級まででも合格自体はできるかも。記録を見たら各5回ずつくらい解いてました。

* DIVE INTO CODE
→1週間無料体験があったので使いました。無料期間でやりきった感じがあったので無料期間中に解約しました。ゴメンネ

* 公式ドキュメント

RaspberryPiを使って入退室管理システム作ってみた!

# 概要
私が所属している研究室は人が少ない!
これではきっと研究も余り進んでいないはずだ!!(偏見)
ということで、何かと便利な入退室管理システムを作ってみたら以外と面白かったのでそれについて触れていきたいと思います。

# 環境
– Ubuntu 22.04 LTS
– Raspberry Pi 4 Model B
– RC-S380/S
– Python 3.10.12

# 準備
1. NFC/FeliCaリーダーをUSBでRasPiに接続
1. 端末で`lsusb`を打ち込んで下記が出力されれば認識完了!

“`
Bus 001 Device 003: ID 054c:06c1 Sony Corp. RC-S380/S
“`

1. nfcpyをインストール

“`
$ pip install -U nfcpy
“`

## 学生証を中身を見てみる
以下が学生証の中身を見るコードになります。
“`python:dump.py
import nfc

def on_connect(tag):
print(tag)

Streamlitの環境でPython3勉強の記録

StreamlitのPython3を勉強して自分用としてメモを残す

1. 環境設定
Python3 と Streamlit の環境を整える手順を説明する。
今回のOSはWindows11とする。

* Python3のインストール(未インストールの場合)
・リンク:https://www.python.org/downloads/
・もしくは、Windows11の既存アプリ:Mincrosoft storeでPython3ダウンロード
* 環境変数を設定する。
・リンクからダウンロードした場合は、環境変数に設定する必要がある。
・Mincrosoft storeでダウンロードした場合は省く
* コマンドプロンプトを起動しPython3のバージョンを確認
“`
python -V
//Python 3.1x.xが出れば環境設定完了
“`
* 必要なパッケージのインストール
以下のコマンドを実行する。
“`