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

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

python+ryeでプロジェクト作成の流れ

ryeを使ったpythonプロジェクト作成の流れ。
きっとすぐ忘れるのでメモを残す。

# 環境
windows11
rye 0.33.0

# プロジェクト作成の流れ
1. プロジェクトを作成する
1. pythonのバージョンを指定する
1. ryeの環境と設定を同期する
1. 使いたいライブラリを追加する

# やってみる
## 1. プロジェクト作成する
“` powershell
# プロジェクト作成
PS D:\projects> rye init test_project
success: Initialized project in D:\projects\test_project
Run `rye sync` to get started

# 出来上がったものを確認してみる
PS D:\projects> tree .\test_project\ /f
D:\PROJECTS\TEST_PROJECT
│ .python-version
│ README.md
│ .gitignore
│ pyproject.toml

└─src
└─t

元記事を表示

opencv-pythonの「module ‘cv2.dnn’ has no attribute ‘DictValue’」対策

# 1.はじめに

Pythonの`opencv-python`モジュールでバージョン4.8あたりから`module ‘cv2.dnn’ has no attribute ‘DictValue’`というエラーが出始めたようで,筆者もこの問題に遭遇しました.

バージョンを下げるとか,エラー箇所をコメントアウトする とか暫定対策的な記事が多かったですが,筆者の環境では解決ができましたので,記事に残すことにしました.

## 1-1.使用環境

– Windows11
– WSL2
– Ubuntu 22.04.1 LTS
– Dockerベースイメージ:nvcr.io/nvidia/pytorch:24.04-py3

# 2.対策

筆者の環境で効果があったのは,[こちらのコメント](https://github.com/opencv/opencv-python/issues/884#issuecomment-1806982912)でした.

筆者の場合は,`opencv-python-headless`ではなく`opencv-python`にしましたが,同様に問題は解決できました.

元記事を表示

[ Python ] 辞書型

## ■ はじめに
Python勉強につき、メモを残します。
下記内容は、備忘録レベルで書き殴ってますので間違い等あるかもしれません。
参考にする際にはその点ご認識のほどお願いします〜。。

## ■ 辞書型
・ 空の辞書型定義
・ データの追加
・ データへのアクセス
・ 変数定義と値の代入
・ データの編集
・ データの削除
・ keyの全取り出し
・ valueの全取り出し
・ 存在しないkeyへのアクセス(エラー)
・ setdefault関数

## ■ サンプルソース
“`python:辞書型
# 空の辞書型を作成し、後からデータを追加
teacher = {}

# 追加構文:変数名[‘key’] = value
teacher[1] = ‘Oniduka’

# データへのアクセス
print(teacher[1])
# 出力結果: Oniduka

# 変数定義と値の代入:変数名 = {key: value…}
student = {1: ‘Aida’, 2: ‘Uida’, 3: ‘Iida’}

# データの編集
print(f’studentデータ編集前

元記事を表示

[ Python ] 関数処理

## ■ はじめに
Python勉強につき、メモを残します。
下記内容は、備忘録レベルで書き殴ってますので間違い等あるかもしれません。
参考にする際にはその点ご認識のほどお願いします〜。。

## ■ 関数
・引数なし関数(戻り値なし)
・引数あり関数(戻り値なし)
・引数あり関数(戻り値あり)

“`python:関数処理
# 引数なし関数(戻り値なし)
def message_print():
print(‘処理が完了しました。’)

# 引数あり関数(戻り値なし)
def arg_message_print(arg):
print(f'{arg}が完了しました。’)

# 引数あり関数(戻り値あり)
TAX = 1.1
def get_tax_calculation(price):
return int(price * TAX)

message_print() #1
print(message_print()) #2
#1 処理が完了しました。(関数呼び出し結果)
#2 処理が完了しました。(関数呼び出し結果)
#2 None(戻り値なしの場合、N

元記事を表示

[ Python ] データ型

## ■ はじめに
Python勉強につき、メモを残します。
下記内容は、備忘録レベルで書き殴ってますので間違い等あるかもしれません。
参考にする際にはその点ご認識のほどお願いします〜。。

## ■ 型
・文字列
・整数
・浮動小数点数
・真偽値

“`python:データ型
# 文字列(シングル, ダブルクォーテーションどちらでも可能)
char = ‘sample’

# 整数(桁数制限なし)
number = 12345678901234567890

# 浮動小数点数(64bit(15~17桁)まで代入可能)
formatted_number = 1.2345678901234567890

# 真偽値(True, False)
boolean = True

# 表示結果
print(char)
# sample

print(number)
# 12345678901234567890

print(formatted_number)
# 1.2345678901234567

print(boolean)
# True

“`

## ■ 参照

https:/

元記事を表示

SARSAを用いたHigh&Low

# 目次

1.ハイ&ロー(Hi-Lo)とは何か
2.使用したライブラリと手法
3.今回の特殊な条件
4.SARSAのプログラム
5.今後の展望

※ミスなどがありましたら報告願います
# 1. ハイ&ロー(Hi-Lo)とは何か
ハイ&ローは、トランプを用いるカードゲームで、名前の通り、高い(high)か低い(low)かを当てる単純なゲームです。
単純なだけに細かい所で色々ルールが派生したり違ったりすることもあります。
最近では、オンラインカジノサイトなどで有名なため、知っている方も多いと思います。
今回は、オンラインカジノでのハイ&ローのルールを採用していきます。
### 手順
1.jokerを除いた52枚のトランプをよくシャッフルし、山札を裏向きにしておく
2.ディーラーが山札の一番上を表にして前に置く
3.プレイヤーは次に山札から出るカードが今開示されているカードより高い(high)か低い(low)かを予想する
(カードの大きさは、小さい順に2,3,4,5,6,7,8,9,10,J,Q,K,A)
4.ディーラーは伏せられていたカードを開示する
5.(1)予想が正しかった場合は、オ

元記事を表示

Tkinterで閉じると親ウィンドウに戻るサブウィンドウを作る

## はじめに
Tkinterで、子ウィンドウを開いた後に別アプリを開いてから子ウィンドウを閉じると、親ウィンドウへ戻らず直前に開いたアプリのウィンドウへフォーカスが行ってしまう。メインウィンドウどこ行った?

てなわけで、子ウィンドウを閉じたら親ウィンドウへ戻るようにしたい。

## 考え方
ウィンドウが閉じられたら、親ウィンドウにフォーカスをセットする。

### ポイント
実際に子ウィンドウが閉じられる前に親ウィンドウへフォーカスをセットし、その後に子ウィンドウを閉じる。

## 実際のコード
“`Python
import tkinter as tk
from tkinter import ttk

class View(ttk.Frame):
def __init__(self, master):
super().__init__(master)
self.app = app

self.label = ttk.Label(self, text=’これがメインウィンドウ’)
self.btn1 =

元記事を表示

マンハッタン距離・ユークリッド距離

## 本日覚えたこと -マンハッタン距離・ユークリッド距離-
Pythonの練習のため、AtCoderやPaizaなどでちまちまとアルゴリズムの勉強中です。
で、問題にマンハッタン距離についての問題がありました。
というか、そもそも

**マンハッタン距離ってなんだったっけ?ユークリッドは聞いたことあるような……?**

用語がわからない超初心者の私。
ちょっと恥ずかしいと思いつつも人間だれしも最初は初心者!と開き直って調べてみました。

## 説明
点Xから点Yまでの距離のこと。
マンハッタンは直角に曲がりつつ移動した距離のこと。(ピンク)
ユークリッドは直線距離。(水色)
うむ。なるほど。なんか記憶の底から、うっすらと思い出が。中学生くらい?
ウン十年前過ぎて、もう忘却の彼方です。
ユークリッドはたしかギリシャ人。ではマンハッタンはアメリカ人?とか考えつつ。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780076/018a4e6d-2602-b605-263a-3ea419e8

元記事を表示

cannot import name ‘PaliGemmaForConditionalGeneration’ from ‘transformers’ と出た場合の解決方法

Googleの最新のPaliGemmaを使おうとして、ちょっと困ったので、記事を書きました。
実行環境はUbuntu 20.04環境下のPython 3.11.4、NVIDIA RTX 3090、64GB RAMです。

>ImportError: cannot import name ‘PaliGemmaForConditionalGeneration’ from ‘transformers’

と出た場合の解決方法を見つけましたので、シェアします。

“`pip install git+https://github.com/huggingface/transformers.git“`

とすれば大丈夫です。どうやらHuggingFaceの最新のtranformersをインストールすれば良いみたいですね。(pipで普通にアップデートしてもPaliGemmaForConditionalGenerationがないと言われた)

参考文献:https://note.com/npaka/n/n1afc8f64e447

加藤 翼
株式会社インスパイアサーチ
代表取締役

https://

元記事を表示

【Python】モデルアウトプットのトラック・ベストトラック・摩擦係数の差を描くプログラム

# 1. 必要なデータ
* モデルアウトプットのトラックデータ(本記事ではcsv)
* モデルアウトプット(本記事ではscaleのnetcdfファイル)

# 2.コード

“`: python
##########################################################################
#
# This python program is makeing figure of Shade; Cd, Contour; MSLP by SCALE netcdf output.
#
# Hiroaki YOSHIOKA, yoshioka-hiroaki-sn@ynu.ac.jp
# Research fellow at Yokohama National University, Typhoon science and technology Research Center
#
# –Released History–
# Jan,12,2024 – 1st released ; Making distributi

元記事を表示

Pytorch + CUDA インストールしてみよう

この記事は自分のノートのため、Pytorchをインストールする方法をまとめる。
OSX持てないから、今回の記事では Linux / WSL と Windowsでインストールする。

# 前提

WindowsでWSLを使用したいとき、必ず“`WSL2“`をインストールする

“`sh
wsl –install
wsl –version
wsl –update
“`

wsl2をインストールしたあと、Ubuntu WSLをインソールする。今回は、“`Ubuntu 20.04“`を利用する。

Ubuntu WSL installation package
https://aka.ms/wslubuntu2004

# CUDA インストール

“`Ubuntu“`をインソールする時に、元々の“`CUDA“`パッケージがあるかもしれませんので、とりあえず存在するパッケージを削除する。

https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#removing-cuda-toolk

元記事を表示

ABC353 with Python (A~E)

ABC353のA~E問題をpythonで解説していきます。筆者は予定があって参加できなかったのですが、後日自力で解けたのはA-Eまででした。

# A – Buildings
## 問題
$N$ 個のビルが横一列に並んでいて、左から $i$ 番目のビルの高さは $H_i$ です。
左から $1$ 番目のビルより高いビルが存在するか判定し、存在する場合その内最も左のビルは左から何番目か求めてください。

https://atcoder.jp/contests/abc353/tasks/abc353_a
## 考察
1番左のビルの高さを基準とし、ビルを左から走査していって基準より高いものが見つかればその1-indexを、なければ-1を返すようにすればよいです。

## コード
“`python:A.py
N = int(input())
H = list(map(int, input().split()))
base = H[0]
for i, h in enumerate(H[1:]):
if base < h: print(i + 2) exi

元記事を表示

Python3: CSV の作成

ヘッダー付き、ダブルクォーテーション(二重引用符)囲いの CSV ファイルの作成方法です。

## プログラム

“`py:csv_write.py
#! /usr/bin/python
#
# csv_write.py
#
# May/14/2024
#
import sys
import csv
#
# ——————————————————————–
sys.stderr.write(“*** 開始 ***\n”)
file_out = sys.argv[1]
#
header=[“市区町村コード”,”宛名番号”,”個人履歴番号”,”個人履歴番号_枝番号”,”最新フラグ”]
data=[[“131016″,”12345678912″,”1″,”1″,”1”],
[“131016″,”12345678913″,”1″,”1″,”1”],
[“131016″,”12345678914″,”1″,”1″,”1”],
[“131016″,”12345678915″,”1″,”1″,”

元記事を表示

Pythonエンジニア認定基礎 受験記録

先日Pythonエンジニア認定基礎を受験してきました。
自分の記録のため、勉強期間や資料などを記載しておこうかと思います。
[Python 3 エンジニア認定基礎試験](https://cbt.odyssey-com.co.jp/pythonic-exam/python3basic.html)

## 結果

合格!
とりあえず11000円が無駄にならなかったことがうれしい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780076/9335b88f-057b-6de0-2185-a6eed7075f68.png)

## 受験の動機

アサインされていた案件が終了し、次が決まらず待機になったので、何か勉強しておこう、ついでに次の面接でプラスになりそうなものを、と思ったことが一番の動機です。
Pythonには興味津々だったものの実務経験がないので、どの程度使えるかの目安になれば未経験でもチャンスないかな?と思ったことがきっかけです。

## 勉強前の予備知識とスキルレベル

Pyth

元記事を表示

AtCoder入茶まで半年かかった凡人がやったこと

こんにちは、Yuyoです。プログラマーになるべく、日々精進している人です。
先日のAtCoderという競技プログラミングコンテスト(通称競プロ)のサイトで、色が一番下の灰色から一つ上がって茶色になりました!
![ScreenShot 2024-05-13 13.57.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/568092/074fb9bf-90de-75d4-3ee0-dceb48cd86fa.png)

そこで、今回は私が茶色になるまでにやったこと、普段問題を解いている環境、これからどうしていくかについて書いていきたいと思います。
また、前置きが少し長いので、私の取り組んだことについて、知りたい方は4から読むことをお勧めします。

# 目次
[1.AtCoderとは?](#1-AtCoderとは?)
[2.AtCoderのメリット・デメリット](#2-AtCoderのメリット・デメリット)
[3.使用してる言語・エディタ・便利機能](#3-使用してる言語・エディタ・便利機能)
[4.茶色に

元記事を表示

pygameでゲームつくるよ!2024

# 1.はじめに!
__皆さんはじめまして!__
今回が初投稿の __たまねぎ(@onion0815)__ です!よろしくお願いします^^
早速ですが、今回からpythonでゲームをつくっていきます!!

### おしながき ~ 今回の目標 ~
– 環境構築

# 2.環境構築
はじめに __環境構築__ を行います!
僕はAnacondaを使っているのでそこに仮想環境を作っていきます。
とはいっても、pythonとpygameをインストールするですが(笑)
では早速やっていきましょう!

# 2-1.仮想環境の立ち上げ
まずは”Anaconda prompt”でゲーム制作用の仮想環境を用意します。
ゲーム制作用とわかるように名前は “game_project”にして作ってみます!
※game_projectの部分を変えれば好きな名前にできます

“`:仮想環境の立ち上げその1
conda create -n game_project
“`
コマンドを実行すると、proceed([y]/n)と「作っちゃうけどだいじょぶそ?」のような感じの確認が入りますが[y]を選択しちゃってく

元記事を表示

異文化交流した話【arduino/c++ ⇒ raspberrypi/python】

arduinoの民が…ラズパイに…出会ったぁ~([10日ぶり2回目](https://qiita.com/kei_tnk/items/2815002705fcf4c994f0)

# はじめに
– GWの間はラズパイ5の環境構築ばかりしてたけど、さすがに飽きたので、ラズパイのパーツを動かしてみた。
– ラズパイ5より、arduino系統っぽいラズパイzero2w(以下、pi02)を購入したのでそちらで作業してみた。
– pi02は、ラズパイ5と同様に[usb接続でssh接続可能](https://qiita.com/kei_tnk/items/33b2d99b4c84c564237e#%E3%81%8A%E3%81%BE%E3%81%91%E3%81%AE%E3%81%8A%E3%81%BE%E3%81%91%E8%BF%BD%E8%A8%98zero2w%E3%81%AE%E5%A0%B4%E5%90%88%E3%81%AEusb%E6%8E%A5%E7%B6%9A)にしてある。なお、osはlegacy_64bit版を使用。古い奴の方が、困ったときの事例検索が楽そうだったので

元記事を表示

【環境構築】Pythonの実行環境構築のベストプラクティス

– `python`の実行環境には`docker`を使用していたが、電力消費が多いのと接続クラッシュがしやすく悩んでいた。
– 仮想環境の構築が苦手だったが、一番良さそうな方法をLLMが教えてくれたのでメモ。

はい、以下の手順でHomebrewを使ってpyenvをインストールし、pyenvで仮想環境を作成して、VSCodeで使用できるようにする方法をまとめました。

1. Homebrewでpyenvをインストールする
– ターミナルで以下のコマンドを実行 [1][2][4][10][13]
“`
brew install pyenv
“`
– シェルの設定ファイル(~/.bash_profileまたは~/.zshrc)に以下を追記 [1][3][4][13]
“`
export PYENV_ROOT=”$HOME/.pyenv”
export PATH=”$PYENV_ROOT/bin:$PATH”
eval “$(pyenv init -)”
“`
– 設定ファイルを再読み

元記事を表示

PythonでPC用通知システムを作る

# PC用通知システム
notify-pyライブラリを使うことでPC用の通知システムが簡単に作れます。

pip install notify-py

でライブラリをインストールできる

## テストコード(Linux用)
“`python:ntf
#!/usr/bin/python3

from notifypy import Notify

# 通知オブジェクトを作る
n=Notify()
# 何も操作しなければ通知エリアにメッセージが残るように設定
n.urgency=”normal”
# メッセージタイトル
n.title=”テスト通知”
# メッセージ
n.message=”メッセージテスト”
# 通知送信
n.send()
# この他にも、アイコンや音 等も設定できる。

“`
このファイルに実行権をつけてください。

## 応用
外部データベースやAPIと連携することで、独自通知システムが可能になる。

元記事を表示

python GUI tcl/tk ウィンドウ全体リサイズ時にフォームサイズも伸縮させる

# 実行サンプル

tcltk の GUIレイアウト配置で
grid や pack のオプションを適切に設定して
ユーザーがウィンドウを大きくしたり、小さくしたときに
配置された各部品(フォーム) が同時にサイズ伸縮するようにした例。

設定していないと、フォームのサイズが変わらず、
違和感のある表示になってしまう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/423803/a2d20aae-4678-8c4d-f02b-a67d81707f52.png)

# 実行環境
windows10
python3.9.5

pythonモジュール tcl/tk

# 実行手順
ソースコードを作成する
windowsコマンドプロンプトでプログラム作成したフォルダに移動し、下記実行する
“`
python プログラム名.py
“`

# 参考 URL
https://tkdocs.com/tutorial/grid.html

# ソースコード

https://github.

元記事を表示

OTHERカテゴリの最新記事