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

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

Pythonで簡単なMVCモデルのコードを書いてみた

# はじめに
MVCモデルは、Webアプリケーションを作成する際によく使われるアーキテクチャパターンです。MVCはModel-View-Controllerの略で、それぞれ以下のような役割を果たします。

# 各MVCの要素について
Model
データを管理する部分。データベースやAPIからデータを取得したり、更新したりする処理を担当する。

View
ユーザーに表示される部分。HTMLやCSS、JavaScriptなどを使って、Webページを作成する。

Controller
ModelとViewをつなぐ部分。HTTPリクエストを受け取り、適切なModelからデータを取得し、Viewに渡す処理を担当する。

MVCモデルを使用すると、アプリケーションをわかりやすく構造化できるため、開発をスムーズに進めることができます。

# コード
以下に、MVCモデルを使用したPythonでのWebアプリケーションの例を示します。

“`Python
from flask import Flask, render_template, request

# Model
class Task:

元記事を表示

【総まとめ】2022年のQiita全記事を分析し、いいね数、タグのトレンド、貢献ユーザーを可視化する!

# はじめに
みずほリサーチ&テクノロジーズ株式会社の@fujineです。
[Python Advent Calendar 2022](https://qiita.com/advent-calendar/2022/python)の19日目になります。

本記事では、**今年2022年にQiitaに投稿された全記事を収集し、いいね数やタグのトレンド、貢献ユーザーなどを分析・可視化**しました。

– 「いいね」が大抵1~2個しか貰えないんだけど、これは平均より高い?低い?
– 「いいね」を貰いやすい時間帯やタグってある?
– 今年は、どんなタグが人気だった?
– 良記事を多数投稿したユーザーは誰?

といった疑問をデータから明らかにすることが狙いです。

:::note
2022年末までまだ1週間近く残っていますが、現時点で集計しても統計値は大きく変動しないという仮定のもの、本記事を執筆しました。
2023年になりましたらデータを再度収集・分析し、本記事を更新する予定です。
:::

# データ収集
まずは、[Qiita API](https://help.qiita.com/ja/ar

元記事を表示

1から学ぶDeepLearning (1)

この記事は,Pythonそのものの使い方かDeepLearningの仕組みまで,1から細かく学習した際のメモ書きとスライドのまとめです.
# 単純パーセプトロン(AND真偽値表の学習)
今回は,単純パーセプトロン(Perceptron)を用いて,AND真偽値表の出力を学習させることを目指す.AND真理値表とは,入力の2つが共に1である時のみ1を出力するものである.
|x1|x2|y|
|:–:|:–:|:–:|
|0|0|0|
|0|1|0|
|1|0|0|
|1|1|1|

![DeepLearning.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3072037/edfb4c4f-533b-7e83-9372-2f3905a85466.jpeg)
## はじめに
前提として,Pythonの基本的な使い方(クラスを扱える程度)を理解していることとして話を進める.
ライブラリであるNumpyを扱うが,この分野でよく使い,複雑な挙動をするnumpy.dot()と,ニューラルネットワークで一般的に使用

元記事を表示

discord.pyでcogを使う

# バージョン情報
Python 3.8.12
discord.py 2.1.0

# 最小限に近いもの
## メインファイル
“`Python:main.py
import discord
from discord.ext import commands

prefix = ‘!’
COGS = [
“Greeting”
]

class MyBot(commands.Bot):
“””起動用のあれこれ”””
async def setup_hook(self):
for cog in COGS:
try:
await self.load_extension(cog)
except Exception as e:
print(e)
await self.tree.sync()

# 接続に必要なオブジェクトを生成
intents = discord.Intents.default()
intents.messages = True
bot = MyBot(
command_prefix

元記事を表示

【Python+Flask】しりとりAPIを作ろう #3 ~しりとりAPI完成

# はじめに

この記事は第3回目です。
前回は[【Python+Flask】しりとりAPIを作ろう #2 ~しりとりプログラム作成](https://qiita.com/Bana7/items/192d8eee7a73938d477b)を参照してください

前回はしりとりプログラムを作成しました
今回はそのしりとりプログラムをFlaskを用いてしりとりAPIにします

# 環境

Dockerを使います
Docker DesktopもしくはDocker composeを使えるようにしておいてください

# 実際にやってみよう

最後にGithubリポジトリのURLを貼っているので良かったら参考にどうぞ

## フォルダ構成

“`terminal
.
├── app
│ ├── output.txt
│ ├── server.py
│ └── siritori.py
├── docker
│ ├── Dockerfile
│ └── requirements.txt
└── docker-compose.yml
“`

## dockerフォルダ内

Dock

元記事を表示

Selenium+Pythonでデータ取得を自動化し、BigQueryに連携した話(後編)

# はじめに

こんにちは、京セラコミュニケーションシステム 西田(@kccs_hiromi-nishida)です。
今回は前編に続いて、後編の記事となります!

https://qiita.com/kccs_hiromi-nishida/items/587b41dc6a4b766b73ea

たとえば基幹システム等の既存システムから何かデータを取得・連携して分析したいと思っても、費用対効果もわからないうちから正式にデータ連携出力を依頼するのはハードルが少し高いな・・と思ったことはありませんか?

そんな時、まずはスクレイピングで気軽に試してみるのもよいかもしれません。

前編、後編を合わせて読んでいただくことで、スクレイピングからデータ連携・分析までの一連の流れを確認できますので、ぜひ両編とも目を通して頂ければと思います。
そして、この記事が業務改善の一助になれれば幸いです!

:::note warn
本記事は2022年12月ごろに作成しております。よって、引用している文章などはこの時点での最新となります。ご了承ください。
:::

## この記事の対象者

– WEBサイトからの

元記事を表示

Pythonでpykakasiを使用して文章から母音と「ん」を抽出するやつ

# 1.はじめに
タイトルの通り、Pythonで`pykakasi`を使用して文章から母音と「ん」を抽出するやつです。
メモ書き程度で雑な文章ですが、備忘録として残しておきます。

# 2.pykakasiとは
日本語の文字・文章をひらがな/カタカナ/ローマ字(ヘボン式/訓令式/パスポート)に変換出来るようにするライブラリです。

# 3.pykakasiをインストール
“`
pip install pykakasi
“`

# 4.pykakasiをimport
“`Python:ExtractVowelAndN.py
# pykakasiをimport
import pykakasi
kakasi = pykakasi.kakasi()
“`

# 5.例文
“`Python:ExtractVowelAndN.py
# 例文
text = ‘々々々あ々々々諸々々々徐々々々なにぬねのにゃにゅんにょん’
“`

# 6.文章中の「々(繰り返し文字)」を処理
`pykakasi`で日本語の文字・文章をローマ字に変換した場合、「々」は「`(kurikaesi)`」に変換されてし

元記事を表示

大規模言語モデルと外部リソースとを融合させたアプリケーションを作ろう-langchainのご紹介-

# はじめに

近年、深層学習を用いた自然言語処理技術の進展が目覚ましいです。
その中でも、GPT-3をはじめとする大規模言語モデル(LLM)には大きな可能性を感じています。
最近ですと、AI技術者以外にも大きなインパクトを与えたChatGPTが記憶に新しいでしょう。
今後もLLMの進化は止まらないと予想されており、私たちもどうやって活用するかを具体的に検討すべきフェーズに入ったのではないでしょうか。
しかし、LLMを実業務に適用するとなると、越えなければならない課題がいくつも出てきます。

今回は、以下にあげた第2・第3のハードルを越えるために役立つ[langchain](https://langchain.readthedocs.io/en/latest/index.html)というライブラリをご紹介します。

## 第1のハードル:機密データの扱い

LLMはOpenAPIのGPT-3等、モデル自体は公開されておらずWebAPIだけが提供されているというパターンが多いです。
そのため、機密データを社外に送信するとなると、各企業のセキュリティルールという大きな壁が立ち塞がるかもしれ

元記事を表示

Python3.11を最速インストールしようとしてSSLモジュールでハマった話

お疲れ様です。KBTです。
待ちに待ったPython3.11がリリースされてから早2ヶ月、皆さんそろそろPython3.6.Xからの乗り換えを検討されている頃でしょうか。
私も早速インストールしてみましたので、今回はインストール時にハマった話を書いてみたいと思います。

# 今回の環境
“`
# cat /etc/centos-release
CentOS Stream release 8
“`

# OpenSSLをインストールする
まずはOpenSSLをインストールします。
折角新しくインストールするなら今をときめくOpenSSL3系をインストールしたいですよね。
試しにdnfでインストールしようとしたところ、本日(2022/12/17)時点で3.0.1がインストールされるようです。
“`
# dnf install openssl3
Last metadata expiration check: 3:49:02 ago on Sat 17 Dec 2022 08:33:35 AM JST.
Dependencies resolved.
===================

元記事を表示

Databricks( Spark ) にて PySpark により開発する際のプラクティスの1つである Dataframe in, Dataframe out の実践

## 概要
Databricks( Spark ) にて PySpark により開発する際のプラクティスの1つである `Dataframe in, Dataframe out`を実績することで、処理を共通化する方法を共有します。基本的な考え方を提示した上で、実践パターンを提示します。

## 基本的な考え方

`Dataframe in, Dataframe out`は、[PySpark 開発時に知っておくべき7つのテーマ](https://qiita.com/manabian/items/9117ac98246dd8bb6edf#2-dataframe-in-dataframe-out)という記事で紹介しておりますが、データフレームを引数としてデータフレームをリターン処理を行う方法論です。本記事のデータフレームとは、Spark データフレームです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/f389748a-1b97-b5bb-9a85-5c9085107955.pn

元記事を表示

PythonのWebフレームワーク Streamlit でアプリを作ってみた

本記事は[DeNA 23 新卒 Advent Calendar 2022](https://qiita.com/advent-calendar/2022/dena-23-shinsotsu) の17日目の記事です。

https://qiita.com/advent-calendar/2022/dena-23-shinsotsu

こんにちは。DeNA23卒内定者の juni です。
現在大学院修士2年で、情報系の研究室でアルゴリズムと最適化に関する研究を行っています。

今回は、Pythonのデータサイエンス用Webフレームワークの [Streamlit](https://streamlit.io/) について、簡単なアプリケーションを作成しつつ紹介します!

# Streamlit とは
https://streamlit.io/

Streamlit は、機械学習やデータサイエンス向けのオープンソースWebフレームワークです。特徴として、
– Pythonで全てのコードを記述することができ、HTMLやCSS、JavaScript といったフロントエンドの知識が不要
– Pytho

元記事を表示

【初心者理系大学生向け】機械学習の学習法

[Google Developre Student Clubs(以下GDSC)](https://gdsc.community.dev/tokyo-university-of-agriculture-and-technology/)で代表をしていますほきです。
現在は[AcademiX](https://www.academix.jp/)というAI学習コミュニティに所属し、日々勉強をするとともに、AI開発の長期インターンに参加させていただいています。
今回は **「機械学習というワード最近よく聞くので勉強してみたい」** といった方や、 **「研究で使うことになったけど何からやったらいいのかわからなくて困っている」** といった方に向けて、僕なりのロードマップを紹介していきたいと思います。

:::note warn
今回は幹すなわち全体像を捉えることを目標としています。
あまり深入しすぎずに、どんどん次のステップへ進んでもらえたらと思います。
:::

# 0.はじめに
本記事では、理系大学生向けと銘打っていますが、次のような方を対象としています。
### 記事の対象者
– 高校レベ

元記事を表示

COEIRONKのエンジンをUbuntuで動かす

##### IPFactory Advent Calender 2022 19日目の記事です。
https://qiita.com/advent-calendar/2022/ipfactory

## COEIROINKとは
[COEIROINK](https://coeiroink.com/)は[シロワニさん](https://twitter.com/shirowanisan)が開発しており、[VOICEVOX](https://voicevox.hiroshiba.jp/)派生のテキスト読み上げソフトです。
公式での対応環境はWindows(CPU,GPU)とMac(CPU)です。

## きっかけ
Discord用の読み上げBOT([0kqBee](https://net0kq.fanbox.cc/posts/3803483))を開発していてCOEIROINKにも対応させたいと思っていました。
しかし、上記の通り公式での対応はWindowsとMacのみでありCOEIROINKのためだけにわざわざWindows環境を用意するのも面倒でした。

## 使用した環境
OS: `Ubun

元記事を表示

続:「T-DASH」の テスト実行結果(成功/失敗)をチャットで通知する方法

本記事は、[『テスト自動化ツールT-DASHの活用方法や事例を記事にしよう! by T-DASH Advent Calendar 2022』](https://qiita.com/advent-calendar/2022/t-dash02)に参加しています。
よろしくお願いいたします!!
本記事は、2022/12/19を担当しております。

https://qiita.com/advent-calendar/2022/t-dash02

2022/12/4担当記事はこちら

https://qiita.com/94dango/items/e1b111bbbe3073e4d4e7

2022/12/5担当記事はこちら

https://qiita.com/94dango/items/9429fa4eec20a994cc61

[『テスト自動化ツールT-DASHの良い点・悪い点をレビューしてみた! by T-DASH Advent Calendar 2022](https://qiita.com/advent-calendar/2022/t-dash01)』にも参加しております。

htt

元記事を表示

CreateMLで作ったCoreMLのモデルをONNXに変換すーる(回帰分析)

# はじめに
CreateMLで作ったCoreMLのモデルをONNXに変換していきまーす

# 開発環境
– MacBookPro 2018
– Python 3.9

# 導入
1.XCodeからCreateMLを開きます

2.[前回](https://qiita.com/SatoshiGachiFujimoto/items/8df23bb3e37ba00b5159)の記事を参考に、PyCaretのdatasetsにある[insurance.csv](https://github.com/pycaret/pycaret/blob/master/datasets/insurance.csv)を使用して、回帰分析を行います

3.Targetにchargesを選択、Featuresにage,bmi,childrenを指定します(※今回は変換する際にカテゴリカルデータがあるとOne Hot Encodingのエラーが出たため外しています)

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

元記事を表示

【19日目】コマンドフレームワークを使ってみよう【PythonでDiscordBOTを作ろう!】

# コマンドフレームワークを使ってみよう
より簡単にコマンドを扱えるようになるフレームワーク

## コマンドフレームワークとは?
先程まで、`on_message`を使用したコマンド判定を行っていました。
が、これには自力ではめんどくさくいつか限界が訪れてしまいます。
これを解決するために、主なラッパーにはコマンドフレームワークという、コマンドの作成から設定、管理に至るまで凄く簡単に行う事が出来る機能があります。

# プリフィックス設定をしよう
プリフィックスは前回までと同様に`c!`とします。
これを読み込ませてあげる必要があります。
botのインスタンス化時に設定することができます。

“`diff_python:main.py
– bot = commands.Bot(intents=intents)
+ bot = commands.Bot(intents=intents, command_prefix=”c!”)
“`
たったこれだけで設定することができます。
あとは、コマンドを作るだけです。

# 挨拶コマンドを作ろう
挨拶してくれるコマンドを作りましょう。
とりあ

元記事を表示

Pythonista3 でARKit 拡張現実体験をするよーーー!!!

この記事は、[Pythonista3 Advent Calendar 2022](https://qiita.com/advent-calendar/2022/pythonista3) の19日目の記事です。

https://qiita.com/advent-calendar/2022/pythonista3

一方的な偏った目線で、Pythonista3 を紹介していきます。

ほぼ毎日iPhone(Pythonista3)で、コーディングをしている者です。よろしくお願いします。

以下、私の2022年12月時点の環境です。

“`sysInfo.log
— SYSTEM INFORMATION —
* Pythonista 3.3 (330025), Default interpreter 3.6.1
* iOS 16.1.1, model iPhone12,1, resolution (portrait) 828.0 x 1792.0 @ 2.0
“`

他の環境(iPad や端末の種類、iOS のバージョン違い)では、意図としない挙動(エラーになる)なる場合もあり

元記事を表示

How to start COMPAS

# COMPAS とは

スイス連邦工科大を中心に開発中のパイソンフレームワーク。RhinocerosやGrasshopper上でロボットアームのシミュレーションが可能になります。コンピューテーショナルデザインからロボッティクファブリケーションまでをカバーする”COMPAS”のはじめかた。

## 参照
[COMPAS docs](https://compas.dev) |
[COMPAS FAB docs](https://gramaziokohler.github.io/compas_fab/latest/)

## Requirements 必須ソフトウェア

* Minimum OS / ミニマムOS: Windows 10 Pro or Mac OS Sierra 10.12
* [Anaconda 3](https://www.anaconda.com/distribution/)
* [Github Desktop](https://desktop.github.com/)
* [Rhino 6/7 & Grasshopper](https://www.rhino3d.c

元記事を表示

インスタンス生成を一つに制限するためのsingleton

# 初めに

この記事ではpythonを使ったsingletonにより,インスタンスの生成を一つに制限したいということをします.

私の環境は
– WSL, Ubuntu22.04.1
– Python 3.10.6

となっています.

# singleton
まずsingletonはというのはデザインパターンの一つで,クラスのインスタンスの生成を制限するものです.ちなみにデザインパターンの私の理解は,先人の知恵的なオブジェクト指向のやつ,という程度です.

singletonでは自身のインスタンスをprivate変数として持ち,コンストラクタもprivateにすることでインスタンスの生成をユーザーから隠します.そして,private変数として持っているインスタンスをpublicなメソッドで返すことで,ユーザーにインスタンスを渡します.このようにしてsingletonはインスタンスを制限します.

# 作成
singletonの作成には,[Pythonで、デザインパターン「Singleton」を学ぶ](https://qiita.com/ttsubo/items/c4af71ceba

元記事を表示

python 関数の可変長位置引数について改めて考える

## 可変長位置引数(スター引数)
可変長位置引数を用いると関数の呼び出しコードが簡潔になり読みやすくなる。

以下のように初めての人と知り合いで発言を区別するコードを記述する。
~~~python:exam.py
def hello(message, name):
if not name:
print(‘nice to meet you’)
else:
print(f'{message}! {name}さん’)

hello(‘こんにちわ’, ‘saku’)
hello(‘こんにちわ’, []) # 第二引数を指定しないとTypeErrorが発生する

>>>
こんにちわ! sakuさん
nice to meet you
~~~
このコードに可変長位置引数を使ってみる
~~~python:exam2.py
def hello(message, *name):
if not name:
print(‘nice to meet you’)
else:
print(f'{message}! {

元記事を表示

OTHERカテゴリの最新記事