Python関連のことを調べてみた2023年01月31日

Python関連のことを調べてみた2023年01月31日

エンジニアインターン9日目

今日はスクレイピングをするための環境構築を行った。awsのアカウントを作ったり、データベースに接続して、今までとはまた違ったことをやった。新しいことだらけで難しいが、いろんなとこに触れることができ、確実にためになっていると思う。新しいことをたくさん教えていただけて、自分が確実に成長できる環境だと思う。これからも勉強することの連続だが、新しいことを学ぶことに楽しさを覚え、エンジニアになるために毎日進歩していきたい。

元記事を表示

Fletを試す(4) – 画面レイアウトの調査(随時更新)

# はじめに

Fletで画面レイアウトを作ると、なかなか思ったようなレイアウトにならないことが多いので、
サンプルというかスニペット的なものをまとめることにする。
まとまったものから随時追加していく。

# 前提事項

– 試した環境
– Windows10
– Python 3.10.8
– Flet 0.3.2

# 詳細

## テーブルレイアウト基本形

– 表示
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/273897/a8d4d845-d87b-1ab6-7c2c-519825c76213.png)

– メモ
– テーブル状にテキストを配置するときの基本形はこれ
– Container→Column→Row→横並びの中身
– Rowによって横幅いっぱいになるので基本必要
– 1行だったらColumnは要らない
– paddingなどが不要ならContainerは要らないけど、詰まった感じになるのでだいたい要

元記事を表示

Python + Tkinter – 学習時間を記録(ポモドーロ法)できるアプリ

## ポモドーロ法で学習時間を記録できるアプリ
Tkinter学習の一環でポモドーロ法で学習時間を記録できるアプリを制作しました。25分学習→5分休憩、という方法で効率よく仕事や学習を継続できるという学習法です。

![スクリーンショット 2023-01-31 093939.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/337578/7bd3e706-0130-93d9-dfa8-4259398e87a8.png)

### コード

“`python
import tkinter as tk
from tkinter import *
import math

# —————————- CONSTANTS ——————————- #

PINK = “#e2979c”
RED = “#e7305b”
GREEN = “#9bdeac”
YELLOW = “#f7f5dd”
FONT_NAME = “Courier”
WORK

元記事を表示

(続)Raspberrypi上のPython-slimが厄介な件

この記事は(続)Raspberrypi 4上のPython-slimコンテナで躓いた話の続きです
面倒な方は
結論だけどうぞ

# 状況
筆者はVisual Studio CodeでPythonの編集を行っていますが,Remote機能を使えば,
ネットワーク上にあるサーバ上での開発ができることは皆さんがご存じのとおりです.
Docker extensionを入れればコンテナ上での開発もできます.
RemoteとDockerの組み合わせで,サーバ上で立ち上げたコンテナに入りながらの編集もできます.
ところが…
## 症状
Raspberry PI4上で立ち上げたPython-slimベースのコンテナにVS Codeで入ろうとすると
Timeoutしてしまう

## 原因
ログの内容から,どうやらatomic libraryが見つからない様子

結論

Python-

元記事を表示

(続)Raspberrypi 4上のPython-slimコンテナで躓いた話

以前書いた
Raspberry PI上のPython-slimコンテナ(Debianベース)でrustc依存のパッケージ構築に苦労した話
の続きになります
面倒な方は結論だけどうぞ
¥¥¥¥¥¥¥¥¥¥¥¥¥¥

前提条件

OS: Rasbian( on Raspberrypi4 )
Docker及びDocker-composeをapt経由でインストール
Dockerfile内にpip経由でbcryptを含むいくつか(主にFlask関係)をインストールする文を書いた
ベースコンテナはpython:3.9-slim

# 経緯
Rasbian上のPython-slimコンテナをベースに

~~~Dockerfile
RUN pip install bcrypt
~~~
(正確にはbcryp依存のflask-bcrypt)したところ,rustcがないと怒られたので,rustcを入

元記事を表示

A/Bテスト(RCT)におけるノンコンプライアンスと操作変数法の応用

# はじめに
A/Bテストを実施する際にしばしば発生するノンコンプライアンス(不遵守)という問題とその対処法について、具体例とPythonによるシミュレーションを交えながらまとめました。内容に誤り等ございましたらご指摘いただけますと幸いです。

# A/Bテスト(RCT)とは
A/Bテストとは**異なる複数のパターンを比較する手法の総称**です。

例えば、「パターンAとパターンBのWeb広告を配信し、クリック率を比較する」というものです。そして、その結果から「クリック率が低い方のWeb広告の配信をやめ、クリック率が高い方のWeb広告を配信を増やす」という意思決定に繋げます。このようなプロセスを繰り返すことで、意思決定の精度(ここで言う広告のクリック率)を向上させていくことがA/Bテストの目的です。

データ分析を生業とする人たちの中ではもう少し厳密に「2つ(以上)の実験群(コントロール群と介入群)を比較するコントロール実験」というように定義されることも多く、**ランダム化比較試験**(**RCT: Randomized Controlled Trial**)と呼ばれることもあります。

元記事を表示

f2pyの使い方:配列の受け渡しに関する注意点

# 概要

f2pyを使用するとFortranで作成したsubroutineをPythonから実行することができる。しかし、subroutineの実行時に、特に引数に配列のが含まれる場合、引数が省略されたり順番が入れ替わる場合がある。そのため、本記事では配列を受け渡す際の引数についてまとめる。

f2pyを昨日使い始めたばかりの素人なので、間違い等もあると思います。コメント等で教えていただけると助かります。

この記事は書きかけです。出張から帰ってきたらもう少しまともに書き直します。

# 環境

– Python 3.8.9
– f2py 1.22.4
– numpy 1.22.4

# f2pyとは

Fortranで書いたサブルーチンをPython動かすためのパッケージ。

# Fortranソース

以下のような(意味のない)コードを用意した。

“`Fortran:test.f90
module mod_test
implicit none

contains
subroutine test_sub(a_in, nax, nay, b_out, nbx, nby)

元記事を表示

Python + Tkinter – マイル→キロメートルへ単位換算するアプリ

## マイル→キロメートルへ単位換算するアプリ

Tkinter学習の一環でマイル→キロメートルへ単位を換算するアプリを制作しました。

### コード

“`python
from tkinter import *
from tkinter import font

#ウィンドウのタイトル+サイズ
window = Tk()
window.title(“Mile to Kilometer”)
window.minsize(width=400, height=300)
window.config(padx=50, pady=20)

myfont = font.Font(family=’Helvetica’, size=16, weight=’bold’)
myfont_result = font.Font(family=’Helvetica’, size=24, weight=’bold’)
myfont_h1 = font.Font(family=’Helvetica’, size=28, weight=’bold’)

def miles_to_km():
miles

元記事を表示

Python の Flask Web API に JWT認証(Flask-JWT-Extended)を組み込んだ

## はじめに

以前に、Python で作成した Flask Web API へ JWT (JSON Web Token) 認証を組み込みましたが、Python のバージョンを3.8系から3.11系に更新したところ、エラーが発生したため、flask-jwt を Flask-JWT-Extended へ切り替えてみました。

旧記事:[Python の Flask Web API に JWT による認証を組み込む](https://qiita.com/kerobot/items/8ef8d7416742eedcea49)

## cannot import name ‘Mapping’ from ‘collections’

Python のバージョンを3.8系から3.11系に更新したところ、このようなエラーが発生しました。

“`powershell

from collections import Mapping
ImportError: cannot import name ‘Mapping’ from ‘collections’

“`

collection

元記事を表示

[Windows×Python] バッチファイルで仮想環境をアクティベートしてPythonファイルを実行する

# 試したこと
以下では、仮想環境をアクティベートした時点でコマンド実行が終了しています。

“`python.bat

cd “パス”
venv\Scripts\activate
python “パス\python_file.py”

“`

# 解決策

callを使って仮想環境をアクティベートする

“`python.bat

cd “パス”
call venv\Scripts\activate
python “パス\python_file.py”
“`

これで、コマンドプロンプトを開いて、1ライナーでPythonファイルを実行できます!

実行例
“`cmd
python.bat
“`

# 参考
https://www.javadrive.jp/command/bat/index1.html

元記事を表示

ChatGPTは本当にプログラミングができるのか 自分の本の練習問題で実験した

# はじめに
「最短コースでわかる」シリーズ、「Pythonで儲かるAIを作る」著者の赤石です。
今、世界中に衝撃を与えている**ChatGPT**。
その機能はあらゆる領域に及んでいますが、その中の一つにプログラミング機能があります。
マンデルブロウの図形を描画させるプログラムを実装したりして、十分びっくりしてはいるのですが、本当に自分で考えてコーディングしているのか。実は、有名なプログラムはテンプレートで覚えているだけなのではないか。
それを試す格好の題材を見つけました。
手前味噌ですが、私の最新刊である「[最短コースでわかる Pythonプログラミングとデータ分析](https://www.amazon.co.jp/dp/4296201123
)」では、各節ごとに、理解度を確認するための練習問題を付けています。そうです、この問題をAIにやらせれば、本当に問題の意味を自然言語として理解し、それに対応したコーディングができているのか、わかるはずです。
ということで、早速試してみました。結論からいうと、1章のPython入門の問題はほとんど難なくこなした、というより簡単過ぎてChatG

元記事を表示

そろそろ引越しだから賃貸を選ぶのは機械学習に任せよう

# 悩み
そろそろ引越しをするんですが、今回も賃貸を選ぶのに後悔が残りそうです。

何とかどこかの工程を自動化できないものか…と思いついたのが、賃貸サイトをWebスクレイピングして情報収集し機械学習で判断してもらうことです。

# お得な賃貸を探そう
どういった条件で賃貸物件を探すかは人それぞれですが、お得であればあるほどいいというは誰でもそうですよね?

**機械学習を使うと賃料を予測することが可能です**。それなので、機械学習を使って賃料の予測価格を算出し、実際価格と比較しようという魂胆です。言い換えると**実際価格が予測価格よりも低ければ、お得な賃貸**ということが言えます。

それを目指して、機械学習のフローをやってみます。

# 結果から
まずは結果から示します。

某賃貸サイトを解析すると前処理によって次のデータを得られました。一部分だけ記載します。

※1. 本記事は具体的な土地情報は伏せて、番号で記載しています。
※2. なお、今回特徴量は**間取り(部屋数でDK, K , L , Sがない場合はワンルーム)、間取り、築年数、建物高さ、階、専有面積、敷金と礼金**です。

元記事を表示

komposeを用いて、簡単にwebサービスをKubernetesに移行する

# 概要
既にdocker-compose.yamlが用意されているようなプロジェクトであれば、komposeというツールを用いることで割と簡単にkubernetesにサービスを移行することができます。業務でAWSからGCPのGKEへの移行を最近頻繁に経験したので、簡単に手順をここにメモしておきます。

# 初めに
以下のものをインストール
– docker
– [minikube](https://minikube.sigs.k8s.io/docs/start/)
– [kompose](https://kompose.io/installation/#macos)

# komposeを用いた移行
## サンプルアプリ
[リンクはこちら](https://github.com/KMimura/kompose_example)。
以下のコマンドで動くことを確認します
– `cd sample-web`
– `docker-compose up`
– `GET http://localhost/item`でレスポンスが見れる

## kubernetes用の設定ファイル作成
sampl

元記事を表示

Python for文まとめ

# 0 はじめに 

## この記事について

殆どのプログラミング言語にはfor文なるものが存在します。
for文には、その言語の熟練度と言っても過言ではない程、色々な使い方が存在するものです。

この記事ではPythonでのfor文の用法をまとめてみました。
私の知る限りの用法をまとめましたので、参考にして頂けますと幸いです。

Pythonを少しでもわかる方が対象です。

## for文とは

for文は次のような事ができます。
①ある操作を指定した回数繰り返す
②イテレータの要素を1つずつ見ていく

イテレータとは簡単に言えば「何かが集まったもの」です。
文字列や配列などがイテレータに該当します。

又、①も実は②に含まれると言うことができます。
発展的な話題なのでそれについては後述します。

# 1 基本

## 1-0 カウント変数

for文にはカウント変数というものが存在します。
カウント変数はfor文を回すごとに指定した通りに変化していきます。

`for (カウント変数) in (なんか)`という形が基本です。

## 1-1 for i in range(N)

元記事を表示

モンティ・ホール問題を少し深掘り

モンティ・ホール問題は沢山の記事があるので説明は省きますが、正解に納得できない人が一定数いるようです。

https://ja.wikipedia.org/wiki/%E3%83%A2%E3%83%B3%E3%83%86%E3%82%A3%E3%83%BB%E3%83%9B%E3%83%BC%E3%83%AB%E5%95%8F%E9%A1%8C

モンテカルロ法で解かれているので正解とされているものは疑いの余地はなさそうです。
pythonで書かれた方がいらっしゃるので、ここを参照ください。

https://qiita.com/ynakayama/items/1e1693503e27ce33e0a0

納得いかない人の一部の人は、こう考えるのではないでしょうか。

:::note
プレーヤーの前に閉じた3つのドアがあって、1つのドアの後ろには景品の新車が、2つのドアの後ろには、はずれを意味するヤギがいる。プレーヤーは新車のドアを当てると新車がもらえる。プレーヤーが1つのドアを選択した後、司会のモンティが残りのドアのうちヤギがいるドアを開けてヤギを見せる。
ここでプレーヤーは、最初に選

元記事を表示

Python 3 エンジニア認定データ分析試験に合格したので勉強方法とかをまとめる

Python 3 エンジニア認定データ分析試験を受験して合格しました!

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1098117/2053c48c-de37-8dde-0768-92aba42e5521.png)

何番煎じかという感じですが勉強方法をまとめてきます。

# 前提スペック
* 10年以上前に大学の工学系の学部に通っていて、数学は好きな科目だった
* 5年ぐらい前に会社の研修で統計値の勉強を少しだけした
* 数学関連知識はなんとなく思い出せばわかる、という感じ
* 12月にPython 3 エンジニア認定基礎試験を受験して合格済
* pythonの文法問題はだいたい解ける、という感じ
# 試験までにやったこと
## 試験2週間前
1. 受験するぞ!と思い、受験申し込みをする
* 日が決まってたほうが気合が入るので……
2. 公式の教科書である [Pythonによるあたらしいデータ分析の教科書 第2版](https://amzn.asia/d/8

元記事を表示

独学のプログラミングのヒント

今日の洗練された時代では、すべてを簡単に学ぶことができます。たとえば、プログラミングは独学で学ぶことができます。プログラミングとは正確には何ですか?プログラミングは、コンピューター上でプログラムを作成するプロセスです。作成されたプログラムは、ソフトウェア、Web サイト、Android または iOS アプリケーションなどの形をとることができます。

本題に入る前に、重要な情報があります。プログラミングを始めたい方はDicoding Academyで学べます . Android、iOS、クラウドからフロントエンド、バックエンドのWeb開発者まで、さまざまな分野があります。これらの各フィールドには、初心者から上級者までさまざまなレベルもあります。すごいでしょ?すぐにクラスを確認して登録してください。

はい、本題に戻ります。この記事では、プログラミングを独学で学べるように、さまざまなヒントについて説明します。すでに興味がありますよね?さあ、よく見てみよう。

プログラミングとは?

![programming-eunoiamediaID.png](https://qiita-imag

元記事を表示

Tkinter 基礎的な使い方

PythonのTkinterを使うことが多くなってきましたが,あまり良い情報がなかったので自分で作らせていただきました。
python関係にご興味のある方はどうぞ。
https://www.python.jp/
***
**1.初めに(自己紹介)**
いつ暇なときにpythonコードを書いている中学生です。時々配布なんかもしています。
Youtubeもやっているのでぜひ見てください。[CY倫りんCH](https://www.youtube.com/channel/UCMYZZ-AZxzz6VMqk0yddHvw)
ホームページでpythonプログラムのソースコードの配布やexeファイルでの配布をしています。[CY倫りんCHホームページ](https://main58.webnode.jp/)
メモ帳やデジタル時計を配布しています。ぜひ入れてみてください。それらはtkinterを用いて書かれています。
***
#**2.Tkinterとは?**
Pythonで[GUI](http://tsumari.zapto.org/detail.php?id=75)を組むことのできるpythonの

元記事を表示

プログラミング入門

皆さん、こんにちは!テクノロジーに関する有用な情報を共有しますが、より明確にするためには、プログラミングの世界です。

「プログラミング」と聞いて何を思い浮かべますか?コーディング?それともコンピューティング?まだ間違っています。ふむ、まずは基本から始めればよかった。プログラミングはプログラムです。

プログラムはどのようなものですか?プログラムは、特定の入力と出力を持つ論理シーケンスです。プログラムは、コンピューターが必要に応じて最適に機能できるように、コマンドの集まりの形にすることもできます。システムに統合されたプログラムは、Web アプリケーションや Android などのアプリケーションと呼ばれます。

さて、この議論では、プログラミングという用語を徹底的に復習します。次の説明を見てみましょう。

プログラミングとは?

eunoiamedia による報告プログラミングとは何か? 簡単に言えば、プログラミングはコンピューター上でプログラムを作成するプロセスです。作成されたプログラムは、ソフトウェア、ウェ

元記事を表示

AIに常識はあるのか(CommonsenseQAから読み解く)

こんにちにゃんです。
水色桜(みずいろさくら)です。
今回は「AIに常識はあるのか」という題でAI初心者に向けて色々書いていこうと思います。
結論から言うと、現在のAI、言語モデルは**非常に高度な”常識”を備えています**。
ではなぜ、そういえるのか、その根拠について丁寧に書いていきます。
最後に”常識”を有するAIを簡単に使う方法を提示したいと思います。

# ”常識”とは
まずは”常識がある”とはなにかというところから考えてみたいと思います。
”常識がある”とは、世界知識を有し、それを適宜必要なタイミングで利用できることを言います。
例えば「太郎君は川を濡れずに渡りたいと考えています。何を使えばよいでしょうか?
①箸 ②橋 ③はしご ④爪楊枝 ⑤竹刀
という問題があった場合、常識的に考えると、答えは②の橋だということはすぐわかると思います。
しかし、橋が川を渡るためのものであるという世界知識がなければ、この問題は解くことができません。
現在のAIにこの”常識”があるのかというのが今回考えたい点です。
まず、今現在言語モデルの基礎として、デファクトスタンダードとなっているtrans

元記事を表示

OTHERカテゴリの最新記事