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

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

DjangoでQuerySetをJSONResponseする

Djangonのモデルから引っ張ってきたQuerySetをそのままJSONで返そうとすると怒られてしまう。
“`python
users = CustomUser.objects.filter(prefecture = ‘yamagata’)
data = {

‘users’ : users,

}
return JsonResponse(data)

“`

“`terminal
TypeError: Object of type QuerySet is not JSON serializable
“`

## 解決

`.values()`で値を取り出して`list()`でリストに変換。

“`python
users = list(CustomUser.objects.filter(prefecture = ‘yamagata’).values())
data = {

‘users’ : users,

}
return JsonResponse(data)

“`

`serialize

元記事を表示

Access Object Storage from OCI Function

__Introduction__
In my previous blog, I’ve introduced how to invoke an OCI function through API gateway. This time, I will take a step further, to introduce how to invoke an OCI function through API gateway and access the file stored on OCI Object Storage. I’ll give you a simple demo on how to search an address by Japan postal code via HTTP request.

The purpose of this demo is to show how the OCI Function works with “API Gateway” and “Object Storage”. Hope you can get a general idea about the f

元記事を表示

pandasでpivot_tableしつつグループごとにdescribeで統計量を見たい

# はじめに
pandasの`describe()`はとっても便利だけど、`groupby`とか`pivot_table`とかで、任意のグループごとにdescribe()して統計量をパパっと見ることはできないものか?

# pandasの`describe`とは?
データ数、平均、標準偏差、四分位点をさっと調べてくれます
“`py
import pandas as pd
import seaborn as sns
df=sns.load_dataset(“iris”)
df.describe()

#sepal_length sepal_width petal_length petal_width
#count 150.000000 150.000000 150.000000 150.000000
#mean 5.843333 3.057333 3.758000 1.199333
#std 0.828066 0.435866 1.765298 0.762238
#min 4.300000 2.000000 1.000000 0.100000
#25% 5.100000 2.80000

元記事を表示

Python,Ruby,PHP,Java,JavaScript,Perlの四則演算の比較

Qiita > プログラミング言語の比較

Python,Ruby,PHP,Java,JavaScript,Perlの四則演算の比較

# Python

https://qiita.com/hiroyuki_mrp/items/d7e4c2d75e947ab99caf

# Ruby

https://qiita.com/mat827/items/ee569f6549b83bb954e2

# PHP

https://qiita.com/koala_56/items/7ed631f62cf0f225f5a6

# Java

https://qiita.com/takahirocook/items/748990882f2de7a630a1

# JavaScript

https://qiita.com/_haya_/items/dbe80010a0a8ac9d70b1

# Perl

https://perlzemi.com/blog/

元記事を表示

【Python】めんどうな会議予約を2分で終わらせてみた

## 作ろうと思ったきっかけ
毎日の会議予約・報告が手間だったためツールを作りました。
## このツールで出来ること
Outlookでの会議予約。
上司への報告用に文章を作成。
## 言語バージョン
“`
C:\Users\test>python –version
Python 3.8.10
“`
## 実装
“`
dt = datetime.datetime.today()
num = 1
list = []
val_teams = “〇〇さん\n\
以下時間帯で会議を登録いたしました。\n”

# ———報告用の文章を作成———
def make_message(val2,val3,val4,val5):
global num, val_teams
val6 = val4 + “:” + val5
after30m = datetime.datetime.strptime(val6, “%H:%M”)
after30m = after30m + datetime.timedelta(minutes=30)
va

元記事を表示

github actionsを使って、python のpytest、flake8などの試し

# はじめに
[Github Actionsの話](https://qiita.com/Guan21/items/f36130c3ecab9058c0e4)で、ブランチによる、トリガーの設定を試した。今回はpythonの自動テストを試したいとおもいます。二つ方法で実装したため、dockerの仮想環境 とgithubのubuntu環境の実行に対して、シミュレーションします。

# Target
– Github Actions でdocker-compose exec -T app pipenv run pytest、flake8の実行ができること
– ubuntu環境で pytest、flake8の実行ができること
– dockerの仮想環境 とgithubのubuntu環境に対して、シミュレーション
– その他

# 共通のテストファイル

簡単に以下のテストファイルを作成しました。

~~~test.py
def test_sample1():
“””add test “””
assert True
~~~

# Docker仮想環境

~~~pipenv.yml

元記事を表示

vaccine_gene感染チェック

なにかまた流れてきたので、vacciene_geneの挙動を流用してチェック用のスクリプトを書いてみる。

なにをチェックする?

感染のチェックとしては
– **所定のフォルダに vaccine.py が存在するか否か**
– **userSetup.pyに該当する内容が書き込まれているか否か**

とりあえずこの2点に絞ってみる。

優先度が高いのは vaccine.pyの有無。
userSetup.pyが汚染されてても、実行されるvaccine.pyが無ければとりあえずは感染拡大しないはず。

所定のフォルダに vaccine.py が存在するか否か

所定のフォルダの指定は、本家挙動に習ってそのまま流用。

cmds.internalVar(userAppDir=True) + ‘/scripts’

そのままファイルの有無をチェック

health = True
targetPath = cmds.internalVar(userAppDir=True) + ‘/scripts’

if os.path.exists(targetP

元記事を表示

辞書型(dict)の値(value)に数字を足す

Googleで調べた際に、値に数字を足す関数がPythonでは見つからなかったので、自身で自作しました。
計算コストを考慮してないコードのため、もっといい方法があれば教えていただけると幸いです。

最後に自身がしたかったことを載せます。

【解決法】

=の前に+をつければいいだけです。Pythonの四則演算ができる方であれば、簡単ですね。

“`python:
dict[key] *= number
“`

例:
“`python:
test_dict = {}
test_dict[“math”] = 90
test_dict[“science”] = 10

”’
数学に10を追加、化学に20を追加
”’
test_dict[“math”] += 10
test_dict[“science”] += 20
“`

[実装したかった事]

For文を回して、同じキー(Key)の場所には数字を足し、該当するKeyがない場合には新しいキー(Key)を作成して値(value)を与えることがしかったです。

例:
“`

元記事を表示

pygame(パイゲーム)を使ってみよう

この記事は、岩手県八幡平市のプログラミング教室「アクセルキャンプ」の公開教材です。
[アクセルキャンプ(フリースペースプラウド)のリンク](https://freespaceproud.com)
教材の作成依頼等も承っております。ご意見等は、リンク先の問い合わせ欄からお願いします。
教材の転用・利用等は自由です。

# 陸上競技会、おつかれっす

先生の学校は運動会が10月にあったので、岩手に来てちょっと不思議でした。(岩手も場所によるみたいね)なんで10月に運動会やらんのやろって思ってたけど、冷静に考えて寒くてそれどころじゃねえ!ってことかなーと思ってます。しらんけど。先生は足が遅くても顔の良さでカバーするタイプだったので、小学校最後の50mの記録が8.7とかだったのは覚えてます。

# ライブラリを使ってみよう
前回(haruto@freespaceproud.onmicrosoft.com)は、「モジュール」というのを使いました。モジュールって何かというと、**もとからpythonに入ってるけど、そのまんまでは使えない機能**のことで、random()モジュール

元記事を表示

コピペでスクレイピング③ クラウドワークスの新着情報を収集

# 今回の内容
[コピペでスクレイピング② クラウドワークスの新着情報を収集](https://qiita.com/Gen2423/items/6a300adb5867970c9f77)に続き、今回は取得したページソースでBeautifulsoupを利用して、必要なデータの抜き出しを行いたいと思います。

ブラウザを開き、目的のページを開いた状態で『F12』ボタンを押すとそのページのソースコードを見入ることができる。というところまでが、[前回の内容](https://qiita.com/Gen2423/items/6a300adb5867970c9f77)でした。
ちなみに、このソースコードを見る画面を『デベロッパーツール』といいます。

では、要素を取り出してみます。
### 要素の探し方
![2022-09-13_18h25_19.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1033228/0d58b079-0fdd-7376-d094-156c2ae7c144.jpeg)

デベロッパーツールの

元記事を表示

GUIライブラリとpyRevitの相性

# 目次
[__1. はじめに__](#はじめに)
[__2. rpw.ui.form__](#rpw.ui.form)
[__3. WPF__](#WPF)
[__4. Tkinter__](#Tkinter(使えない))
[__5. PySimpleGUI(使えない)__](#PySimpleGUI(使えない))
[__6. まとめ__](#まとめ)

# はじめに
pyRevitに搭載されているPythonエンジンには、**ironPython**(C#で実装されたPython、Python2)と**CPython**(Cで実装されたPython、Python3)があります。この**CPython**は通常のものと異なる**組み込み Python**(Python Embeddable)というもので、Numpy など一部の外部ライブラリが使えますが、GUI関連のライブラリでは使えないモノもあります。
この記事ではpyRevitで使えるGUIライブラリを紹介します。

# rpw.ui.form
PyRevitにはRPW(Revit Python Wrapper)というライ

元記事を表示

【SQLite】DBを使った簡単なパスワード認証

## DBを使ったパスワード認証の方法を確認する

### 実行結果
“`bash
$ python ./db.py

Please input user ID: mash
Please input user Password: xxxxx
———————————–
Success! You are loged in as “MASH”

“`
+ 上記のように __ユーザID__ と __パスワード__ の入力を求められる

### 実行環境

+ __macOSX Monterey__
+ __Python 3.10.6__

### Pythonコード

“`db.py
import hashlib
import sqlite3

# digest
def get_digest(password):
pwd = bytes(password, ‘utf-8’)
digest = hashlib.sha256(pwd).hexdigest()
return digest

# DB connectio

元記事を表示

slackに投稿されたメッセージを用いて、キーワード抽出・分析をしたい計画~slack appをコピペして、JSONに変換するプログラム~

## はじめに
イベント等のアイデア出しをするSlackチャンネルがあるのですが、
投稿されたメッセージを組み合わせて新たなアイデアを創造したいなあ。というわけで。

### slackに投稿されたメッセージを用いて、キーワード抽出・分析をしたい計画
以下の段階で完成させようと思います。
第一弾:まずは投稿メッセージを取得しよう <-now 第二弾:キーワード抽出をしよう 第三弾:分析・可視化しよう ~~API,エクスポート機能を使わない理由は、ワークスペース管理者へ連絡をするのが億劫だからです。~~ ## 完成(妥協)したもの ↓をコピペしてプログラムを実行すると ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505609/b7c40ced-4c49-b1fd-3ac8-d01c5a5bf0c0.png)

こうなります。

“`json:out
{
“value”: {
“poster”:

元記事を表示

Lookerダッシュボード 外部サイト埋め込み(一時URL発行)

# はじめに
Lookerのダッシュボードを外部サイトのログインユーザに対して公開したい場合に利用できる
SSO埋め込み処理機能を実装する機会があったので
備忘録的に記載させていただきます。

※ Pythonのパターンを例に記載させていただきます。
※ 他言語のパターンはLooker様が公開している Githubのサンプルをご確認ください。

https://github.com/looker/looker_embed_sso_examples

# Lookerのダッシュボード 埋め込みパターン

## パブリック埋め込み
– ダッシュボードの公開設定(Public Access)をONにした状態
– ログイン無しで誰でも閲覧可能な状態
– `iframe` を利用し、外部埋め込み可能
– 誰でも閲覧できてしまう為、利用場面は限られる

## プライベート埋め込み
– ダッシュボードの公開設定(Public Access)をOFFにした状態
– Lookerへログインしており、権限を持つユーザだけが閲覧可能な状態
– Lookerへログイン済みのユーザしか見ないのであれば `ifr

元記事を表示

pytorchでよく使うものを残しておきたい メモ。

# 同じような記事あるかもしれませんが自分用メモ

pytorchをよく使う機会があり、
なるたけ汎用的にいつも使うものを残しておきたい。

## 前処理用クラス

“` python
#入力画像の前処理クラス

class DataTransform():
”’
 参考)https://pytorch.org/tutorials/beginner/transfer_learning_tutorial.html
画像の前処理用クラス。
画像のサイズをリサイズ。デフォ値は個人的によく使う
 VGG16 訓練時の平均と分散を設定してます。
中の処理は必要に応じて修正。
”’
def __init__(self,resize=244, mean=( 0.485, 0.456, 0.406), std=(0.229, 0.224, 0.225) ):
self.data_transform = {
‘train’ : transforms.Compose([
transforms.RandomResizedCrop(

元記事を表示

Docker学習、私はこう取り組んだ

# はじめに

[『個人開発2年間の軌跡』終盤のDocker学習](https://qiita.com/gmasa/items/fb9a0487bb0a12b91219#web%E3%82%B5%E3%82%A4%E3%83%88dockerizing-django-with-postgres-gunicorn-and-nginx-%E3%81%A7%E5%AD%A6%E7%BF%92)において、お手本サイト[『Dockerizing Django with Postgres, Gunicorn, and Nginx』](https://testdriven.io/blog/dockerizing-django-with-postgres-gunicorn-and-nginx/)に取り組んだ時の記録です。強強ではない人間がこのサイトを読んでどこに引っかかったのか、参考にしてもらえればと思います。

# 対象読者
Djangoユーザー かつ Docker初心者を対象にしています。個人開発でDockerを使えるようになりたい人の助けになれば幸いです。

# 開発環境
– Windows1

元記事を表示

Python,Ruby,PHP,Java,JavaScript,Perlのデバッガ(デバッグ)の比較

Qiita > プログラミング言語の比較

Python,Ruby,PHP,Java,JavaScript,Perlのデバッガ(デバッグ)の比較

# Python

https://qiita.com/kaitolucifer/items/dc58efebd72d72a8feb2

# Ruby

https://qiita.com/port-development/items/5ea6448eb2b45c70ef65

https://qiita.com/suketa/items/52c60d79332c9a24f973

# PHP

https://qiita.com/ryouya3948/items/0055c1935b7bd62ba3b9

# Java

https://qiita.com/gatchan03/items/3c43b674e2b7c4b5c5cb

# JavaScript

https://qiita.com/a_

元記事を表示

唐揚げとプードルを絶対に見分けたい!畳み込みニューラルネットワークで画像分類

## はじめに
https://qiita.com/katsujitakeda/items/f1842f5e831bb6475ba8

この記事は前回の記事,[唐揚げ?orトイプードル?機械学習で判別してみた](https://qiita.com/katsujitakeda/items/f1842f5e831bb6475ba8)のリベンジ記事です!

前回初投稿でお試しで書いたものが多くの方に見ていただけて嬉しい反面、雑な部分も多くあるので恥ずかしくなっているところです。(とは言え、1万viewもありがとうございます!!)

今回は畳み込みニューラルネットワーク(以下CNN)を用いて唐揚げとプードルの分類器を作成しました。
その後にGradCAMを用いてニューラルネットワークが何をみて判断しているのか可視化したので見ていただけたら嬉しいです。

目標は **この画像を正しくプードルと認識できるような分類器を機械学習で作ること!!**

![image.png](https://qiita-image-sto

元記事を表示

Python 仮想環境作成方法 (venv, pyenv)

pyenvとvenvを用いて新たにPythonの仮想環境を作成する際の手順をまとめました。
なお、環境構築については、以下を参考にしてください。

– Windows (WSL)
– [pyenv, venv](https://qiita.com/mukusuke421/items/51e1684614cab0cb78c3)
– Mac
– [pyenv](https://zenn.dev/unsoluble_sugar/articles/283ebf698c307c)
– [venv](https://hitori-sekai.com/python/venv/)

## 仮想環境作成方法

### pythonバージョンの指定

“`
pyenv global <バージョン>
“`

### 仮想環境を作成
作成するディレクトリで以下を実行。
“`
python -m venv .venv
“`
`.venv` というディレクトリが作成される。
このフォルダに仮想環境のライブラリ等の情報が保存される。

### 仮想環境を起動
“`
source

元記事を表示

データサイエンスでDota2強くなるかも説(5)~ハード試合データを解析してみたら驚愕の事実が~

# はじめに

最近,Dota2を始めましたが全く勝てません
ハードボットにボコボコにされます.

色々と調べても「死ぬな」くらいのことしか分らず苦戦しています.

### データサイエンスでDota2強くなるかも説

そこで,データサイエンスの力を借りて,どのような状況なら勝っているか?や前回に比べてどのように振舞ったから勝てたのか?ということを数値化して分析していけば強くなるのでは!と考えました.本企画はその仮説を検証していく企画です.

![file](https://hamaruki.com/wp-content/uploads/2022/09/image-1662048158424.png)

### 前回までのあらすじ

#### 環境構築編
Dota2の情報をPythonで取得できるような環境を作成し[*1]( https://hamaruki.com/2022/09/06/data-science_with_dota2_05/#参考サイト),データを取得+定期的に保存する機構を作りました[*2]( https://hamar

元記事を表示

OTHERカテゴリの最新記事