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

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

GoogleColabでRuntimeError: PytorchStreamReader failed reading zip archive: failed finding central directory

## エラー
学習済みモデルhoge.pthをフォルダに置いた後、コードを実行するとエラーが生じる
## 環境
Google Colab
Python 3.10.12
## 対処法
まだhoge.pthが完全にダウンロードできていない

yolox_x.pthの読み込み中

気長に待ちましょう
## 参考
https://stackoverflow.com/questions/71617570/pytorchstreamreader-failed-reading-zip-archive-failed-finding-central-directory

元記事を表示

LangChainでAzure AI Searchの情報を取得してAIに回答させる

Azure AI Searchを使って、データをリトリーブしてきて回答させるメモです。
Retrieverの作り方は、以前紹介した下記を参考にしてください。

https://qiita.com/umaxiaotian/items/6ccdd0a9052c5610d678

# やりたいこと
Azure AI Search内に入っている内容を元に、GPTに回答してほしい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/418662/d5bcee3b-d103-df8e-5e02-a278a1f174e7.png)
イメージは上記です。

このようにAzure AI Search内に入っている情報からリトリーブし、そのデータをもとに回答を行います。
Azure AI Searchには検索精度を高めるために、スコアリングプロファイルやセマンティック、フィルターなど様々な機能が含まれています。そんな便利な機能を使って今回はLangChainのカスタムリトリーバーを自作して精度を高めた検索を行っ

元記事を表示

pyenvをアップデートする

pyenvを更新しないと最新のPythonが使用できません。
サクッとpyenvをアップデートする方法を記述します。
pyenvにはアップデートコマンドがないため、プラグインである[**pyenv-update**](https://github.com/pyenv/pyenv-update “pyenv-update”)を使用します。

### pyenv-updateをインストールする

“`sh
$ git clone https://github.com/pyenv/pyenv-update.git $(pyenv root)/plugins/pyenv-update
“`

### pyenvをアップデートする

“`sh
$ pyenv update
“`

元記事を表示

ABC329回答メモ

# 0.はじめに
 今回は順調に30分ほどでDまでクリア。
 E以降を解いて一つ上のステージに行けるかと思いましたが
 やはり壁は厚く、EもFもACにたどり着けませんでした。
 それでも、レートは+23といい感じに上がりました。

# 1.A – Spread
 文字列をリストとしてインプットし
print(*リスト名)で表示するだけの簡単なお仕事でした。

 https://atcoder.jp/contests/abc329/submissions/47674240

# 2.B – Next
 いろんな解き方がありそうですが、ぱっと思いついた以下の方法で。
 【考え方】
  ・リストAを読み込み最大値igを取得
 ・リストAからig以外を抽出したリストl2を作る
  ・リストl2の最大値を表示して終了
 
 https://atcoder.jp/contests/abc329/submissions/47679719

# 3.C – Count xxx
 問題文を一読し、重複を許さない=アルファベット毎の
 最大連続数の合計が答えになる。
 と、分かったので

元記事を表示

AtCoder初心者 DailyTrainingメモ 2023/11/19

# ABC229 C-問題
https://atcoder.jp/contests/abc229/tasks/abc229_c

![229C.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/547298/6f82f510-d773-e14e-e5cb-0c8ca0168d0e.png)

**ポイント**
Wグラムしかかけれないので、美味しいチーズから順番に使っていく(貪欲法)

““Python:229C.py
# 入力例
3 5
3 1
4 2
2 3

N,W = map(int,input().split())

リストに格納する
Cheeses = []
for _ in range(N):
A,B = map(int,input().split())
Cheeses.append((A, B))

# Cheeses:[(3, 1), (4, 2), (2, 3)]

# 降順にソートして美味しい順にする
Cheeses.sort(reverse = True)

# C

元記事を表示

Python(Flask)によるAPIの開発の基礎

### 本記事の背景
Flaskでjsonを扱う時によく検索されるが、背景にあるAPI開発に関して網羅的な説明はあまり見かけないため、本記事はFlaskを使い、API開発の基礎に触れつつ、jsonを扱い、実際のAPIテストでよく使うPostmanを紹介しながら、API開発における一連な動きについて解説する

### Restful API開発とは

詳細は[AWS](https://aws.amazon.com/jp/what-is/restful-api/)に任せるとして、要は、HTTPと同じ、GET/POST/PUT/DELETEを使い、データのやり取りする。
メリットとして、上記以外は使わないので、実装しやすい。
デメリットとしては、上記以外で特殊なケースの場合、複数のAPIを叩くことになる場合がある

### バックエンド処理
上記のRestful APIのバックエンド側の実装としては、DBとの連携を想定した場合それぞれ以下に示す。

GET:DBからデータを取得する(Select処理)
POST:DBのデータを追加する(Insert処理)
PUT:DBのデータを更新する(Up

元記事を表示

Blockchain Symbol での各種変換処理の定義方法

以下私の個人的なメモであり、詰まった変換処理等を追記していきます

## UnresolvedAddress を エンコード済みアドレス へ変換する

Symbol で `https://node-url:3001/transactions/confirmed` で検索した際に、`recipientAddress` 等が以下のような形式で出力されます。

`9850A2A43114D0E1B4F772597E3BD92D78DF96CAE886B726`

こちらを 39文字のエンコード済み文字列へ変換すると次のようになります。

`TBIKFJBRCTIODNHXOJMX4O6ZFV4N7FWK5CDLOJQ`

以下に変換手順を記します。

**Symbol Python SDK v3 の利用時**

“`python
from symbolchain.facade.SymbolFacade import SymbolFacade
from symbolchain.sc import UnresolvedAddress

address = “9850A2A43114D0E1B4

元記事を表示

OpenAI APIを用いた文書要約アプリの作成

# はじめに
この記事では私が作成した文書要約のWebアプリの使用方法とコードを解説しています。
コードはGitHubにリポジトリを作成しておりますので、使用されたい方はCloneしてお使いください。
[https://github.com/YusukeOhnishi/document_summarize](https://github.com/YusukeOhnishi/document_summarize)

このWebアプリは文書(英語論文)を読む際に、

– さっとまとめてくれるWebアプリがあれば便利そう
– 自身で必要な機能を追加していけたら楽しそう

というモチベーションから作成しました。実際に使用してみて、不便だなと感じる点やこういう機能が欲しいなと思えば、コメント及び連絡いただけると助かります。できる限り機能追加して対応していきます。

# Webアプリの使用方法
## Webアプリの起動
作成したアプリケーションはローカル環境及びDockerコンテナ上で起動することができます。
以下のコマンドを実行してクローンを行ってください。

“`bash
git clone

元記事を表示

Azure Blob Storage CLI及びPython経由ファイルアップロード/ダウンロード操作手順

## この記事の目的

`Azure Blob Storage`へのファイルアップロード及び`Azure Blob Storage`からのファイルダウンロードの操作手順を解説します。
操作には`Azure CLI`及び`Azure Python SDK`を利用します。

## 👇これより先は下記内容を前提とします

– [Azure CLI の概要](https://learn.microsoft.com/ja-jp/cli/azure/get-started-with-azure-cli)
– [ローカル開発環境でAzure SDK for Pythonを利用するための認証設定](https://docusaurus.plant11.com/azure/azure_sdk_python_certificate)

## CLI 経由 Azure Blob Storage ファイルアップロード/ダウンロード

サブスクリプション設定

“`text
az account set –subscription “***-***-***-***-***-***”
“`

リソースグ

元記事を表示

python,tkinterでcsvファイルの数値を読み込み、出力する

今回はtkinterからcsvファイルを指定し、
数値を読み込み、tkinter上にデータを出力するアプリを作成しました。

以下が全体のソースコードです。

“`python:qiita.py
import tkinter as tk
import tkinter.filedialog as fl

def get():
#ファイルパスをマウスで選ぶ
#ユーザー名にお使いのPCの名前を入れる
filetype=[(“all file”,”*”)]
path=fl.askopenfilename(initialdir=”C:\\Users\\ユーザー名\\デスクトップ”,filetypes=filetype)

#csvファイルの読み込み
f = open(path,”r”)
text = []
for i in f.readlines():
i=i.strip()
i=i.split(“\n”)
if i == [”]:

元記事を表示

Django REST framework

# 背景

Chat GPT-3.5にDjango REST frameworkのAPIを作らせようとしたが、
少し勉強しないとChat GPTが作ったコードの評価できないため、
Django REST frameworkのチュートリアルなどを一通り読むことにした。

詳細な手順等は公式のチュートリアルを参照すればよいため、個人的に気になったことのみメモする。

# 学習内容

Djangoでプロジェクトやアプリを作成したら、
Django REST frameworkを使うには下記ファイルを編集or新規作成する。

– アプリ名/models.py
下記のように適当なモデルを追加する。

“`models.py
from django.db import models

class ArticleTag(models.Model):
“””タグ一覧”””
tag_name = models.CharField(max_length=50)
created_date = mo

元記事を表示

AtCoder初心者振り返りメモ ABC329

# ABC329の回
https://atcoder.jp/contests/abc329

ABの2完。
振り返ると先にD問題にチャレンジすれば良かったのですが、C問題でTLEを取ることができず時間だけを失ってしまいました。

# A-問題
https://atcoder.jp/contests/abc328/tasks/abc329_a

**問題文**
英大文字からなる文字列 S が与えられます。S の各文字を空白で区切り、その順で 1 文字ずつ出力してください。

**ポイント**
Pythonには、空白区切りで出力する「*S」があるのですぐに回答できました。

““Python:A.py
# 入力
S = str(input())

print(*S)
““

# B-問題
https://atcoder.jp/contests/abc328/tasks/abc329_B

**問題文**
N 個の整数 A1,A2,…,ANが与えられます。 このうち最大でない整数の中で最大である整数を求めてください。

**ポイント**
最初に最大値を求め、リストAからリストBへ最

元記事を表示

Pythonで「数値リテラルを記述する」の動作を確認してみた

# 概要

Pythonで「数値リテラルを記述する」の動作を確認してみました。以下のページを参考にしました。

https://www.javadrive.jp/python/num/index1.html

# 実装

以下のファイルを作成しました。
“`sample.py
print(18.414)
print(256)
print(3.1e+3)
“`

以下のコマンドを実行しました。
“`
$ python3 sample.py
18.414
256
3100.0
“`

# まとめ

何かの役に立てばと。

元記事を表示

Pythonのバージョン

# バージョンの確認
“`bash
python -V
Python 3.10.5
“`

“`bash
py –list
Installed Pythons found by py Launcher for Windows
-3.10-64 *
-3.9-64
-3.8-32
-3.7-64
-2.7-64
“`

`%LOCALAPPDATA%\py.ini`
“`text
[defaults]
python=3.8
“`

“`bash
py –list
Installed Pythons found by py Launcher for Windows
-3.10-64
-3.9-64
-3.8-32 *
-3.7-64
-2.7-64

python -V
Python 3.10.5
“`

元記事を表示

Azure Web Apps に Gradio をローカル Git でデプロイする方法

# Azure Web Apps に Gradio を LocalGit でデプロイする

* Azure Web Apps で Gradio を動かす手順の紹介です。
* Docker を使った方法などは紹介されているので、そちらの方が楽かもしれないです。
* streamlit についてもスタートアップコマンドを変更すれば同じ方法で起動出来ると思います。(未確認)

## 環境

* azd コマンドをあらかじめインストールしておきます。
[azd のインストール](https://learn.microsoft.com/ja-jp/azure/developer/azure-developer-cli/install-azd?tabs=winget-windows%2Cbrew-mac%2Cscript-linux&pivots=os-windows#install-azd)

|言語など|バージョンなど
|-|-
|Python|3.10.11
|Gradio|4.4.1
|Azure Web Appsプラン|F1(無料)

## 手順1 Azure Web Apps のサービ

元記事を表示

Pythonで標準入力を受け取る方法

## はじめに
本記事は、競プロやpaizaスキルチェックなどで必要な標準入力からのデータ取得について、Pythonでデータを受け取るための備忘録です。

## 標準入力について
標準入力(Standard Input)はユーザからデータを受け取るための方法。
プログラムへのキーボードなどからの入力を受けつける。
input()関数は、ユーザーから文字入力を受け取り、文字列として返す。

## 基本的なデータ取得
“`Python
str = input()

# 前後の空白を取り除く
str = input().strip()

# 数としてintやfloatで取得する
int = int(input())
“`

## 1行に複数個の入力データの場合
#### 文字列データ
“`:Input
りんご みかん ぶどう
“`
“`Python
strs = input().split()
print(strs)
#Output: [‘りんご’, ‘みかん’, ‘ぶどう’]
“`
#### 数値データ
“`:Input
2 1 -5
“`
“`Python
nums =

元記事を表示

ChatGPTとPythonで学ぶ カーネルPCA

皆さんこんにちは。今日も引き続きChatGPT先生をお迎えして、「ChatGPTとPythonで学ぶ カーネルPCA」というテーマで雑談したいと思います。それではChatGPT先生、よろしくお願いします。

### **assistant**:

こんにちは、引き続きよろしくお願いします。カーネルPCAについて話し合っていきましょう。

PCA(Principal Component Analysis)は、データの次元削減を行うための手法の一つです。PCAは線形の手法ですので、非線形なデータに対しては限定的な効果しかありません。そこで登場するのがカーネルPCAです。

これはPCAの拡張で、非線形なデータの次元削減を行うための手法です。カーネルPCAは、データを高次元空間に写像してからPCAを行うことで、非線形なデーォの次元削減を実現します。この高次元空間への写像をカーネルトリックと言います。

Pythonを使えば、scikit-learnのライブラリを用いて簡単にカーネルPCAを実行することができます。具体的なコードについて説明します。

### **use

元記事を表示

確率統計学・統計検定学習備忘録 ③標本平均・標本分散(※復元抽出)、数Ⅰと数Bの統計の違い①

普段より、自分のプログラミング等に関する質問に答えて下さっている皆様ありがとうございます。m( _ _)m よろしければ統計検定の学習等にご利用ください(自分はそもそも存在を知ったのが10月末で来年受けます。※1年計画です。)

**なお、以下の資料の計算はあくまで過去に個人的に確認したもので、公的に査読されていないため、間違っている箇所があれば、遠慮なくご連絡いただけるとありがたいです。**

※最近たまたま見つけた以前計算していたノートの続編の一部です(前職で、もしかしたら使うかもとおそらく休みとかに計算したものの、使う気配全くなく存在すら忘れていたノート)

標本平均・標本分散の定義

https://drive.google.com/drive/u/0/folders/1ZqON1V_DZpcBKK38ZUBYtc4TVvJjGRqK

(注:抽出の仕方が「復元抽出」だった場合の)標本平均・標本分散に関する公式

https://drive.google.com/drive/u/0/folders/1jAHjco0YJtlQWMf3vX5DXs-9BPtf6

元記事を表示

ABC329をPythonで(A~F)

Sky株式会社プログラミングコンテスト2023(AtCoder Beginner Contest 329)

https://atcoder.jp/contests/abc329

# A問題
pythonのzipを使う
“`python:A
print(*[s for s in input()])
“`
# B問題
setに入れて2番目に大きいのを取る
“`python:B
input()
a = set(map(int, input().split()))
print(sorted(a)[-2])
“`
# C問題
各文字について一番長いのが何文字か数えて、その総和をとる
“`python:C
n = int(input())
s = input()

d = dict()
last = [0, 0]
for s_i in s:
if last[0] == s_i:
last[1] += 1
else:
last = [s_i, 1]

if last[0] not in d:
d[last[0]]

元記事を表示

python,mediapipe,tkinterを用いて悪い姿勢になったらデクストップ通知するアプリ

メモ書き程度にしか記載していないためご了承下さい。
再度編集いたしますので、イメージだけでも掴んでいただきたいです。

今回も作成したアプリは、座った姿勢を改善することを目的としてしています。
mediapipeを用いることで、PC内蔵カメラから座った姿勢での鼻の座標を取得することができます。
そして、鼻の座標が閾値を超えた場合、「姿勢が悪くなっています」
とデスクトップ通知します。

“`python:qiita.py
import tkinter
import matplotlib.pyplot as plt
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
import cv2
import numpy as np
import time
import mediapipe as mp
from plyer import notification

class Application (tkinter.Frame):
def __init__(self,root=None):
s

元記事を表示

OTHERカテゴリの最新記事