- 1. ‘NoneType’ object has no attribute ‘sendall’
- 2. 【Python】Tkinterのウィジェットにはどんなものがあるか
- 3. ABC368(Atcoder Beginner Contest)のA~F(A,B,C,D,E,F)問題をPythonで解説(復習)
- 4. OpenCVでHDR動画を読み込み、書き出す時にトーンマップで見た目をいい感じにする
- 5. EDGAR APIを利用してAppleの純利益データを取得するPythonコードの解説
- 6. Pythonでmapオブジェクトを正しく出力する方法:list化とアンパックの使い分け
- 7. 「Pythonで作る2Dゲームグラフィックエンジン」本をリリースしました
- 8. Pythonで解いたっpaizaのキャンペーン対象問題(RANK C)
- 9. 【Python】簡単にリアルタイム顔認識をする!
- 10. 【ローカルLLM】Windows11,WSL2上でのllama-cpp-python環境構築(CPU/GPU利用)
- 11. 【競技プログラミング】pypyjitが無い環境でも再帰のおまじないを書きたい
- 12. Firebase Cloud FunctionsでのPython環境セットアップとエミュレータ起動手順
- 13. E試験(2024#2)学習記録~受験1週間前~
- 14. StreamlitとSupabaseで基礎的な認証アプリを作ってみた
- 15. StripeとFastAPIとvue.jsで決済できるウェブアプリの実装。テスト環境で動かす
- 16. mach-o file, but is an incompatible architecture (have ‘x86_64’, need ‘arm64e’ or ‘arm64’) の対処法
- 17. Python 導入方法について
- 18. Dockerを用いたPython環境をクラウドに移行した際のNo module named ‘fugashi.fugashi’
- 19. Pythonで作る8ビット風ゲーム音楽ジェネレーター:スペースシューター編
- 20. Matplotlibを使った基本的なグラフ作成ガイド
‘NoneType’ object has no attribute ‘sendall’
# なんの記事?
pythonのftplibを使ってファイルアップロードするプログラムを作っていた時に起きたエラーのメモです。# ‘NoneType’ object has no attribute ‘sendall’
### なんでこのエラーが起きたのか?
プログラムは一つの宛先アドレスにそれぞれ別アカウントでログインしてファイルを送ることを想定していて、宛先を切り替える時にセッションを作り直さなかったからです。つまり
“`python
for 宛先 in 宛先s:
ftp = FTP_TLS(‘宛先アドレス’)
~~ログイン処理や送信処理など
ftp.quit()
“`
とするべきところを
“`python
ftp = FTP_TLS(‘宛先アドレス’)
for 宛先 in 宛先s:
~~ログイン処理や送信処理など
ftp.quit()
“`
としていたことが原因。
【Python】Tkinterのウィジェットにはどんなものがあるか
Pythonで手軽にデスクトップアプリを作成できるTkinterには様々なウィジェット(アプリの中身を構成する部品)が用意されています。
どんなものがあるのか、簡単ではありますが代表的なものを軽くご紹介させていただきます。
Python、Tkinterについての説明は割愛しておりますのでご了承ください。## 最初に
コードの下記部分は各ウィジェットで共通となります。
“`python
import tkinter # Tkinterのインポートroot = tkinter.Tk() # アプリのウィンドウを作成
root.title(‘ウィジェット’) # ウィンドウにタイトルを表示
root.geometry(‘400×300’) # ウィンドウの大きさを設定root.mainloop() # アプリを実行
“`## 代表的なウィジェット
### Label
主な用途:文字を表示させる。
“`python
import tkinterroot = tkinter.Tk()
root.title(‘ウィジ
ABC368(Atcoder Beginner Contest)のA~F(A,B,C,D,E,F)問題をPythonで解説(復習)
# ABC368(Atcoder Beginner Contest)のA~F(A,B,C,D,E,F)問題をPythonで解説(~~復習~~)
# A問題
– スライス `[:]` を利用する.
– `A` の後ろ側 `[N-K:]` と, `A` の前側 `[:N-K]` を足したものを `B` とする.
– アンパック `*` を利用して,空白区切りで出力を行う.
“`A.py
“””
<方針>
– スライス `[:]` を利用する.
– `A` の後ろ側 `[N-K:]` と, `A` の前側 `[:N-K]` を足したものを `B` とする.
– アンパック `*` を利用して,空白区切りで出力を行う.
“””
# 標準入力受け取り
N, K = map(int, input().split())
A = list(map(int, input().split()))# Bの作成
B = A[N-K:] + A[:N-K]# 出力
print(*B)
“`# B問題
– シミュレーションすれば良い.以下の内容を無限ループする.
– `A` に含まれる正の要
OpenCVでHDR動画を読み込み、書き出す時にトーンマップで見た目をいい感じにする
## OpenCVでのHDR動画の読み出しと書き出し
最近は、WindowsのAutoHDRという機能で、ゲームをすると自動的にHDRになり、ゲームキャプチャもHDR画質で録画されているのですが、OpenCVでHDRの動画を読み込み、書き出しをすると、元に比べて白っぽい動画が出力されてしまいます。
OpenCVはこういう変換も得意分野だろう、と思いながら、検索したのですがあまりぴったりの記事は見つかりませんでした。Windows Copilotに相談してみるも、正しいコードは返答されませんでしたが、トーンマップで調整するんだ、ということだったので、その数値を変更して、私なりに元のHDR動画に近い印象のSDR動画を出力できるようになりました。
参考までにコードを載せておきます。
生成AIによるコードを直したものなので、もうちょっと良い適切なやり方があれば、教えてください。
よろしくお願いします。“`python:opencv.py
import cv2
import numpy as npdef apply_tone_mapping(hdr_image):
# ト
EDGAR APIを利用してAppleの純利益データを取得するPythonコードの解説
EDGAR(Electronic Data Gathering, Analysis, and Retrieval system)は、アメリカ証券取引委員会(SEC)が提供するデータベースで、企業の財務情報を公開しています。この記事では、Pythonを使用してApple Inc.(AAPL)の過去の純利益データをEDGAR APIから取得する方法を解説します。
## 1. 必要なライブラリのインポート
“`python
import requests
“`
このコードでは、requestsライブラリを使用して、HTTPリクエストを送信し、APIからデータを取得します。requestsは、APIからのデータ取得に広く使用されるPythonの標準ライブラリです。## 2. AppleのCIKコードの指定
“`python
cik = “0000320193”
“`
CIK(Central Index Key)は、SECが発行する企業固有の識別コードです。Apple Inc.のCIKは0000320193です。このコードを使用して、Appleに関するデータをAPIから取得します。
Pythonでmapオブジェクトを正しく出力する方法:list化とアンパックの使い分け
## はじめに
https://paiza.jp/works/mondai/stdin_primer/stdin_primer__pair_data_step2
この問題の2行目以降の入力をそのまま出力するために以下のコードを書きました。
## コード
“`python
# coding: utf-8
# 自分の得意な言語で
# Let’s チャレンジ!!
n = int(input())
l = []for i in range(n):
l.append(map(int,input().split()))
print(l[i])
“`## 実行結果
“`python
「Pythonで作る2Dゲームグラフィックエンジン」本をリリースしました
# はじめに
「Pythonで作る2Dゲームグラフィックエンジン」という本を書きました。PDFの電子書籍です。
以下の BOOTH や技術書典 (技術書典17で販売予定) で購入出来ます。[Pythonで作る2Dゲームグラフィックエンジン -スーパー〇リオ風ゲームを作る-(BOOTH)](https://mainichipython.booth.pm/items/6033205)
[Pythonで作る2Dゲームグラフィックエンジン -スーパー〇リオ風ゲームを作る-(技術書典)](https://techbookfest.org/product/ufuhAPK3dn1qepahQdciUU)
以下のYouTube動画では本の内容を紹介しています。
[「Pythonで作る2Dゲームグラフィックエンジン」本をリリースしました(YouTube)](https://youtu.be/7MnLolOZZKc)
以下のYouTube動画でゲームのデモを見る事ができます。(少しバージョンは古いです)
Windows 用の exe も置いてありますので、プログラムの動作確認や完成版を体験す
Pythonで解いたっpaizaのキャンペーン対象問題(RANK C)
https://paiza.jp/pages/campaign/paiza-qiita
paizaコラボ企画ということで。順番はキャンペーン対象問題の順で。
時間もないので適当に正解させていきましょう。
Pythonを始めた人やDランク水準の人はこちらの記事を読むことをお勧めします。
https://zenn.dev/yuhi_ili/articles/c8c6d08c882efb
ほかのRANKは下の記事を。
https://qiita.com/c0b23092db/items/35d7f3ca82bc0cb39cc6
## 宝くじ
https://paiza.jp/works/mondai/c_rank_skillcheck_archive/lottery
“`py:宝くじ.py
# coding: utf-8
c = int(input())
n = int(input())
q = [int(input()) for _ in range(n)]
for i in q:
if i == c:
print(“first”)
el
【Python】簡単にリアルタイム顔認識をする!
## はじめに
Pythonのライブラリ、cv2を使ってリアルタイム顔認識を作ることができます。
Pythonでリアルタイム顔認識をしてみたい!という方に読んでいただきたいです。## 実行環境
– Python 3.11
– Windows 10### 使用ライブラリ
#### 標準ライブラリ
– os
#### 外部ライブラリ
– cv2
画像処理のライブラリです。
ver
– face_recognition
顔検出と顔認識のライブラリです。
– numpy
数値データの処理などのライブラリです。
– tqdm
プログレスバーのライブラリです。## ライブラリのインストール
今回のプログラムでは「cv2」「face_recognition」「numpy」「tqdm」と5つの外部ライブラリライブラリを使用します。以下のコマンドでインストールしましょう。どちらのコマンドを使っても大丈夫です。
“`:ライブラリのインストール
pip install opencv-python
pip install face_recognition
pip install
【ローカルLLM】Windows11,WSL2上でのllama-cpp-python環境構築(CPU/GPU利用)
# 概要
ローカルLLMをPython環境で使ってみたかったので環境構築。llama-cpp-pythonをWSL上の仮想環境で動かそうとしたら、GPU使用の部分でだいぶハマったので自分用にメモ。(2024/8/26)
URL:(https://github.com/abetlen/llama-cpp-python)
## 環境
OS:Windows11 64bit
CPU:Intel Corei9 13900k
GPU:RTX4090 24GB
WSL:2.2.4.0 (Ubuntu22.04)
CUDA Toolkit:12.2
NVIDIA Driver:560.94
Python:3.12.3
rye:0.39.0## CPU版のインストール
CPUで使用する場合CUDA等は必要ありません。
WSLを立ち上げて、pip installするだけです。
“`terminal:
$ wsl
$ . .venv/bin/activate #仮想環境のアクティベート
$ Python3 -m pip install llama-cpp-python
“`
※pip ins
【競技プログラミング】pypyjitが無い環境でも再帰のおまじないを書きたい
# 競プロで再帰処理をPyPyで提出する時
AtCoderにおいてPython言語で提出する時、ほぼ全ての処理はPythonよりPyPyで提出した方が処理時間が速い。
ただ、再帰処理においてはPythonの方が速い傾向にある。
そこでPyPyでも処理を速くするためのおまじないがある。
“`python
import pypyjit
pypyjit.set_param(‘max_unroll_recursion=-1’)
sys.setrecursionlimit(10**7)
“`
この三行を書くとPyPyでも再帰を高速に実行することができる。
だがこれをマクロに含めてしまうと、PyPyではない環境でコンテストに出ている時にimport出来なくてデバッグがやりづらい。
そして、これを外してデバッグして提出する時に忘れることも多い。
これを解決したい。
# 解決策:このファイルをローカルに用意する
“`python:pypyjit.py
def set_param(st): pass
“`
pypyjitが無ければ作ってしまえば良いじゃない。
このファイルを用意することで、マクロ
Firebase Cloud FunctionsでのPython環境セットアップとエミュレータ起動手順
## はじめに
FlutterアプリからPythonコードを呼び出して実行する手段として、Firebase Cloud Functionsを利用する機会がありました。しかし、FunctionsのPythonに関する記事は少なく、セットアップ方法も複雑であるため、苦労していました。インターン先でサポートしていただきながら、なんとかセットアップすることができたので、注意点も交えながら紹介したいと思います。また、Firebase Cloud Functionsを用いた開発においては、エミュレータの使用が不可欠であることも実感したのでエミュレータの起動手順も説明したいと思います。## 1. Firebase Cloud FunctionsでのPython環境セットアップ方法
セットアップの主な流れは以下の通りです:
1. `firebase init` を実行する
2. `requirements.txt` と `main.py` を作成する(必要なライブラリは全て `requirements.txt` に記述)
3. `requirements.txt` に記載されたライブラリを `
E試験(2024#2)学習記録~受験1週間前~
私がE試験(2024#2)を受験するにあたって学習した内容をまとめています。
ただの自分の学習記録ですがなにか参考になると嬉しいです。
もし間違いやより適切な表現・解釈等ありましたらコメントいただけると幸いです。
学習範囲は[JDLAのホームページ](https://www.jdla.org/certificate/engineer/)からシラバスをダウンロードしてご覧ください。# 数学的基礎
深層学習の基礎となる数学的な内容についてのまとめです。
## パラメータ推定
### ベイズ則
ベイズ則(ベイズの定理)とは、条件付き確率 $P(Y|X)$ をYとXの周辺分布$P(Y),P(X)$と条件付き確率$P(X|Y)$を用いて表すための公式です(Xを説明変数、Yを目的変数と呼ぶことが多いです)。
具体的な公式は以下です。“`math
P(Y|X)P(X) = P(X|Y)P(Y) \iff P(Y|X) = \frac{P(X|Y)P(Y)}{P(X)}
“`
ここで、$P(Y|X)$や$P(X|Y)$はある事象Y,Xが起こったもとである事象X,Yが起こる確率であるた
StreamlitとSupabaseで基礎的な認証アプリを作ってみた
## はじめに
「認証機能付きのウェブアプリを作るのは難しそう…」そう思っていませんか?しかし、StreamlitとSupabaseを組み合わせることで簡単に実装できます。
本記事では、StreamlitとSupabaseを使用して、効率的に認証システムを構築する手順をご紹介します。
コード全文はこちら
“`python
import os
import streamlit as st
from supabase import create_clienturl = os.environ.get(“SUPABASE_URL”)
key = os.environ.get(“SUPABASE_KEY”)
supabase = create_client(url, key)def sign_up(email, password):
res = supabase.auth.sign_up({“email”: email, “password”: password})
return resde
StripeとFastAPIとvue.jsで決済できるウェブアプリの実装。テスト環境で動かす
この記事は**Stripe**によって決済するウェブアプリをゼロから作るサンプルを説明します。フロントエンドはTypeScriptのvue.jsで、バックエンドはPythonのFastAPIで書きます。
vue.jsとFastAPIを使っている読者の場合はすぐここに載っている手順で実行できるはずですが、そうでない場合でもStripeを実装する大体の流れの参考になれるでしょう。
# ここでやることと目標
## Stripeとは
**Stripe**(ストライプ)とはウェブアプリ上で決済を実装するためのサービスです。ネットでお金のやり取りをする時によく使われて、ウェブエンジニアの間で結構人気です。
Stripe決済をウェブサイトに入れるには普段フロントエンド側もバックエンド側もコードを書く必要があって、かなり複雑でわかりにくくて挫折してしまいそうです。ただStripeのいいところはテスト環境で開発できることだと思います。
## テスト環境
お金に関わることなので、開発の時に気軽に本番のクレジットカードや決済の情報を使うわけにはいきませんよね。だから普段はテスト環境で本番に真
mach-o file, but is an incompatible architecture (have ‘x86_64’, need ‘arm64e’ or ‘arm64’) の対処法
## 概要
この記事では、macOS で Python 環境を使用している際に発生する `mach-o file, but is an incompatible architecture (have ‘x86_64’, need ‘arm64e’ or ‘arm64’)` エラーの原因と、その対処法について解説します。特に、Apple Silicon(M1/M2 チップ)を搭載した Mac での Python パッケージのインストールに関する問題に焦点を当てています。
## 原因
このエラーは、macOS 上で Python のパッケージをインストールした際に、システムのアーキテクチャ(`x86_64 と arm64`)が不一致である場合に発生します。具体的には、インストールされている Python やパッケージが `Intel(x86_64)` 用にビルドされている場合、`Apple Silicon(arm64)` 環境でこれを実行しようとすると、互換性の問題が生じます。その結果、特定のC拡張モジュールがロードできず、エラーが発生します。
## 対処法
この問題を解決するた
Python 導入方法について
# 挨拶
おはこんばんにちは。
ポポノタンと申します。
エンジニア志望の元製造メンです。今回はPythonの導入方法について解説していこうと思います。
:::note warn
windows環境にVSCodeを導入する解説となっております。
:::※Macや仮想環境での導入は今回は取り扱わないです。ご了承くださいm(_ _”m)
# ①PythonのインストーラーのDL
![18f5c49bbc4139ae5149a4b04edf4135.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3864659/cce92cc9-874c-206d-7020-530cd859022d.png)https://www.python.org/downloads/
上記のURLから「Download Python~」と書いてある箇所をクリックし、PythonのインストーラーをDLしてください。
# ②Pythonのインストーラーを起動
![240703d44508a5f0c1aaf66793f27d
Dockerを用いたPython環境をクラウドに移行した際のNo module named ‘fugashi.fugashi’
解決に結構沼ったので書き残しておきます。
## 問題
Docker imageを持ち込んでクラウドで動作させる際に、Docker内のpython環境でfugashiがインストールされているにもかかわらず以下のようなエラーが発生するようになった。~~~
Traceback (most recent call last):
File “/home/users/xxxx/.py”, line 1, in
from fugashi import Tagger
File “/home/users/xxxx/.local/lib/python3.11/site-packages/fugashi/__init__.py”, line 1, in
from .fugashi import *
ModuleNotFoundError: No module named ‘fugashi.fugashi
~~~## 解決法
Docker内のPython環境で–no-warn-script-locationと–force-reinstal
Pythonで作る8ビット風ゲーム音楽ジェネレーター:スペースシューター編
## はじめに
レトロゲームの魅力の一つである8ビットサウンド。そのノスタルジックな音色は、多くのゲーマーの心を掴んで離しません。今回は、Pythonを使って8ビット風のゲーム音楽を生成する方法を紹介します。特に、スペースシューターゲームをイメージした約45秒の曲を作成していきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2648069/e9f0fc03-3512-427b-3d35-5cdfa0ba20b6.png)
## 要件と仕様
このプロジェクトを始める前に、明確な要件と仕様を定義しました。これにより、目的に沿った実装が可能になり、また読者の皆さんにもプロジェクトの意図をより良く理解していただけると思います。
### 要件:
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2648069/64a87704-e64e-4595-4a6d-fcd116f8cd44.
Matplotlibを使った基本的なグラフ作成ガイド
## はじめに
Matplotlibを使えば折れ線グラフ、棒グラフ、散布図、ヒストグラム、パイチャートなど、さまざまな種類のグラフを簡単に作成できます。例えば、データの傾向やパターンを視覚化したり、作成したグラフを使って、分析結果を視覚的に分かりやすく伝えることができます。それではMatplotlibの使い方を書いていきます!## 基本的な使い方
まず、Matplotlibには2つのグラフ作成方法があります。1つはオブジェクト指向の**Axesインターフェース**を使用する方法。2つ目は簡略化された**pyplotインターフェース**を使用する方法。
複雑なカスタマイズが必要な場合や、後から特定のグラフ要素を操作したい場合は、オブジェクト指向の**Axesインターフェース**が推奨されます。
シンプルなグラフやインタラクティブな作業には、**pyplotインターフェース**が便利です。簡単な例をもとにそれぞれの比較をしてみます。
**・Axesインターフェース**
“`python
import matplotlib.pyplot as pltfig = plt.fig