Python3関連のことを調べてみた2022年04月06日

Python3関連のことを調べてみた2022年04月06日

Python3: Google Cloud Functions で加算

フォルダー構造

“`text
$ tree
.
├── main.py
└── requirements.txt
“`

“`py:main.py
def sum_up(request):
request_json = request.get_json()
aa = 0
bb = 0
#
if ‘aa’ in request_json:
aa = int(request_json[‘aa’])

if ‘aa’ in request_json:
bb = int(request_json[‘bb’])
#
sum = aa + bb
rvalue = {}
rvalue[‘sum’] = sum
rvalue[‘aa’] = aa
rvalue[‘bb’] = bb

return rvalue
“`

“`text:requirements.txt
# Function dependencies, for example:
# package>=version
“`

## ローカルでテスト ##

サーバーの起動

“`bash
f

元記事を表示

Watson Knowledg Catalog for CP4D ~API色々~

# はじめに
Watson Knowledge Catalog for CP4D(WKC for CP4D)のAPIドキュメントに記載されている情報が少なく、APIで色々実施しようとすると苦労するので、今まで調べた内容を備忘録としてメモっておきます。
調べたAPIが増えたら、適宜この記事を更新しようと思います。

あくまでも例です。より良い方法が他にもあるかもしれません。そして、コーディング初心者なのでその点ご了承ください。

**試した環境 : WKC for CP4D 4.0.5**

# 参考資料
全体的なAPI Reference
[Watson Data API](https://cloud.ibm.com/apidocs/watson-data-api#introduction)

アセット(資産)に特化したAPI Reference
実は、こっちの方が詳しい。
[Catalog and Asset Management Service](https://api.dataplatform.cloud.ibm.com/v2/cams/explorer/#/)

# 認証情報の

元記事を表示

Python3: Google Cloud Functions の使い方

次のような関数を作成します。

Project: project-apr06
関数名: function-apr06
とします。

“`py:main.py
def hello_test(request):
“””Responds to any HTTP request.
Args:
request (flask.Request): HTTP request object.
Returns:
The response text or any set of values that can be turned into a
Response object using
`make_response `.
“””
request_json = request.get_json()
if request.args and ‘message’ in reque

元記事を表示

PyCharm Community EditionでFlaskアプリケーションを起動する設定

# 目的
PyCharm Community EditionでFlaskアプリケーションを起動する設定の覚書です

# 注意
PyCharm Professionalを使えば Flaskサポートは標準搭載されており、このページの手順は不要です。
Python入門中だし、最初はPyCharm Community Editionでいいかなという気持ちで使っています。

https://www.jetbrains.com/help/pycharm/flask.html

# 環境
– macOS Monterey
– PyCharm Community 2021.3.3
– Python 3.9.10

ソースコードは Flask Tutorialの [Blog Blueprint](https://flask.palletsprojects.com/en/2.1.x/tutorial/blog/) まで終わらせたものを使っています

# 手順
1. PyCharm Community Editionでflaskを使ったソースコードを開く
1. 右上のプルダウンから`Edit Config

元記事を表示

CapsGANをKerasで

# 概要
CapsNetを用いたGAN:CapsGANをKerasで構築して学習させてみます。ここで構築するCapsGANは、Discriminator部分のみがCapsNetによって構築されたものとなります。

CapsNetについては[私が以前書いた記事](https://qiita.com/heart_mugi/items/c1cb6d29d057a33acbae)をお読みください。

# 構築
早速、CapsGANを構築していきます。
## CapsNet
Discriminatorに用いるCapsNetを定義します。当記事では詳しく説明しません。
“`python
class Length(layers.Layer):
“””
Compute the length of vectors. This is used to compute a Tensor that has the same shape with y_true in margin_loss.
Using this layer as model’s output can directly

元記事を表示

Python3: Elastic Cloud に ndjson 形式のデータを投入する

こちらにあるデータを使いました。
[新型コロナワクチンの接種状況](https://info.vrs.digital.go.jp/dashboard/)

データの取得

“`bash
wget https://data.vrs.digital.go.jp/vaccination/opendata/latest/prefecture.ndjson
“`

“`py:elastic_cloud_insert_ndjson.py
#! /usr/bin/python
#
# elastic_cloud_insert_ndjson.py
#
# Apr/04/2022
# ——————————————————————
import sys
import json
import ndjson
import requests
# ——————————————————————
def file_to_s

元記事を表示

「X」記号を検出するOpenCVライン検出

行内のX記号を検出する必要がある画像があります。
画像:
![dpUhO.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2603249/927d24f1-3cd1-a18a-d833-f00898f5c519.png)

上の画像を見るとわかるように、線の中にX記号があります。シンボルのX座標とY座標を知りたい。この絵の中でこのシンボルを見つける方法はありますか、それとも小さいですか?
“`
import cv2
import numpy as np

def calculateCenterSpot(results):
startX, endX = results[0][0], results[0][2]
startY, endY = results[0][1], results[0][3]
centerSpotX = (endX – startX) / 2 + startX
centerSpotY = (endY – startY) / 2 + startY

元記事を表示

Python3: Elastic Cloud に API でデータを投入する

こちらと同じことを Python3 で行いました。
[Elastic Cloud に API でデータを投入する](https://qiita.com/ekzemplaro/items/5591fa43c2dc39d47a6b)

“`py:elastic_cloud_insert.py
#! /usr/bin/python
#
# elastic_cloud_insert.py
#
# Apr/04/2022
# ——————————————————————
import sys
import json
import requests
# ——————————————————————
def file_to_str_proc(file_in):
str_out = “”
try:
fp_in = open(file_in,encoding=’utf-8′)
str_out = fp_

元記事を表示

[Atcoder]python3の入力処理方法

3/26からAtCoder始めました。対戦よろしくお願いいたします。
AtCoderの入力方法は標準入力です。
普段、標準入力はあまりしないので、戸惑ってしまいました。
そのため、主な入力処理パターンをまとめました

# 入力個数が1つ(ex 1)
“`python
# int
a = int(input())
# str
a = str(input())
“`

# 入力個数が決まっているパターン(ex A B C Dが与えられるパターン)
“`python
# int
a, b, c, d = map(int, input().split())
# str
a, b, c, d = str(int, input().split())
“`

# 個数が指定されない場合(ex. A1~Anの個数が当たられるパターン)
“`python
# int
An = list(map(int,input().split()))
# str
Bn = list(map(str,input().split()))
“`

楽しく競技プログラミングしましょう!

元記事を表示

Python Embeded でお手軽(?)環境構築の忘備録

## 別にインストーラ版使えば良くね?
そう思った貴方!!そのとーーーーーーりーーーー!!!
以下の精神がない方は素直にインストーラ版使ってください。
そのほうがネットで情報探すのも楽だし何よりつまづく事ほとんどないはず。

## なんでEmbeded版使うの?
理由は以下2つ
①開発環境をイチから構築してこそ三流くんの鏡
②会社の環境でレジストリ荒れると警告食らう
一番の理由は①、これくらいできなきゃ開発者名乗る資格なし
そして個人的には②の理由も結構致命的。違法ソフト呼ばわりされるのが迷惑なのでインストールはなるべくしたくない、ってことです。
但し、インストーラ版にしか含まれてないフォルダはなんとか取り出すしかないです……標準装備してくれよ…

## 動作環境
OS:Windows 11 Pro 21H2
Python Version:Python 3.10.4
PCスペックは皆さんが使用しているマシンより間違いなく性能低いです。

## 構築してみよう
まずは、Python公式サイトからEmbeded版をDLしましょう。
ついでに同じバージョンのInstaller版もDLしましょ

元記事を表示

【AtCoder解説】PythonでABC246のA,B,C,D,E,F問題を制する!

**ABC246**の**A,B,C,D,E,F問題**を、**Python3**でなるべく丁寧に解説していきます。

ただ解けるだけの方法ではなく、次の3つのポイントを満たす解法を解説することを目指しています。

– シンプル:余計なことを考えずに済む
– 実装が楽:ミスやバグが減ってうれしい
– 時間がかからない:パフォが上がって、後の問題に残せる時間が増える

ご質問・ご指摘は**コメント**か**ツイッター**、**マシュマロ**、Discordサーバーまでお気軽にどうぞ!

**Twitter: [u2dayo](https://twitter.com/u2dayo)**
**マシュマロ: https://marshmallow-qa.com/u2dayo**
**ほしいものリスト: https://www.amazon.jp/hz/wishlist/ls/2T9IQ8IK9ID19?ref_=wl_share**
**Discordサーバー(質問や記事の感想・リクエストなどどうぞ!) : https://discord.gg/jZ8pkPRRMT**
よかったら**LGTM

元記事を表示

超初心者がAtcoder ProblemsのC問題を224回から230回までをpythonで解いてみた

解き方を忘れないためにまとめてるだけなのでコードはめちゃくちゃ不細工です、ここもっと良くできるよって場所あったら教えていただけるとありがたいです!!

224 Triangle

https://atcoder.jp/contests/abc224/tasks/abc224_c

“`python:practice.py
n = int(input())
points = [list(map(int, input().split())) for _ in range(n)]
nums = [i for i in range(n)]
cnt = 0
for i in range(n):
x1,y1 = points[i]
for j in range(i+1,n):
x2,y2 = points[j]
for k in range(j+1,n):
x3,y3 = points[k]
if (y2-y1)*(x3-x1) != (y3-y1)*(x2-x1):

元記事を表示

LambdaからDynamoDBを操作する

# 背景・目的
– 以前、「[VPC内のLambdaからインターネットに接続する](https://qiita.com/zumastee/items/21c77e66156a8d26856e)」と「[DynamoDBを試してみた](https://qiita.com/zumastee/items/ef8a5c855161f9e4ba92)」で作成したLambdaとDynamoDB(以降、DDBという。)を使用してQiitaの記事一覧を取得し、その内容をDDBに登録する。

# 内容
## 前提
### DynamoDBテーブル
– DDBのテーブル名は「qiita_user_articles」、各項目は以下の通りとする。

| 項目名 | キー/インデックス | タイプ| 例|
|:— | :—- | :—- | :—- |
| user_id | パーティションキー| 文字列 |test|
| article_id | ソートキー | 文字列 |00001|
| title | グローバルセカンダリーインデックス | 文字列|test title|
| url |

元記事を表示

【初心者が始める】githubの環境構築(前編)

Pythonの勉強を始めました。
『ゼロから作るDeep Learning』にて、githubで公開しているスクリプトを使用するために、今回githubを使い始めました。
githubを使い始める際の手順は下記リンクで行なっています。

https://prog-8.com/docs/git-env

上記サイトの手順5 「Githubにプッシュする」で、`git init`を実行すると下記のようなヒントが表示されました。

“`python:
hint: Using ‘master’ as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config –global init.de

元記事を表示

Flaskを使って10分でAPI作る

# Flaskを使って10分でAPI作る
PythonのFlaskを使ってAPIを作ってみようと思います。

## Flaskのインストール
“`
mkdir flask-api
cd flask-api

python3 -m venv .venv //任意
source .venv/bin/activate //任意

pip install Flask
“`

## もっとも単純なもの
– urlにリクエストが来たらdataを返すAPI
“`python
@app.route(‘/’)
def return_data():
data = {1: “a”,
2: “b”,
3: “c”,
4: “d”,
5: “e”}
return data
“`

## 条件をつけたもの

“`python
@app.route(‘/id=‘)
def designated_return_data(id):

if id == ‘1’:
d

元記事を表示

Python3: Cloud Firestore に ndjson のデータを追加

こちらを参考にしました。
[ドキュメントの追加](https://firebase.google.com/docs/firestore/manage-data/add-data?hl=ja#add_a_document)

“`py:put_firestore_docs.py
#! /usr/bin/python
#
# put_firestore_docs.py
#
# Apr/02/2022
# ——————————————————————
import sys
import json
import ndjson
import firebase_admin
from firebase_admin import credentials
from firebase_admin import firestore
from datetime import date, datetime
# —————————————————-

元記事を表示

Python3: Cloud Firestore のデータを ndjson に変換

こちらを参考にしました。
[コレクションのすべてのドキュメントを取得する](https://firebase.google.com/docs/firestore/query-data/get-data?hl=ja#get_all_documents_in_a_collection)

“`py:get_firestore_docs.py
#! /usr/bin/python
#
# get_firestore_docs.py
#
# Apr/02/2022
# ——————————————————————
import sys
import json
import firebase_admin
from firebase_admin import credentials
from firebase_admin import firestore
from datetime import date, datetime
# ———————————–

元記事を表示

【合格体験記】Pythonエンジニア認定試験(基礎、データ分析)

# はじめに

ちょっと息抜き。本稿は趣向を変えて、お届けします。

筆者、Pythonエンジニア認定試験を直近の約半年のうちに2つ受験し、合格しました。
というわけで、合格を記念して、合格体験記を綴ることにしました。

(Pythonエンジニア育成推進協会に投稿しろよ、って話ですが恥ずかしい。)

# 受験結果

– Python3エンジニア認定基礎試験

:::note info
合格評価得点:700/筆者の評価得点:850/結果:合格
:::

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/685193/95673ca8-4290-4abf-775f-b3905ec047b5.png)

– Python3エンジニア認定データ分析試験

:::note info
合格評価得点:700/筆者の評価得点:975/結果:合格
:::

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/6851

元記事を表示

ABC 082 B – Two AnagramsをPython3で解く

# 初めに
「[AtCoder に登録したら次にやること ~ これだけ解けば十分闘える!過去問精選 10 問 ~](https://qiita.com/drken/items/fd4e5e3630d0f5859067)」の各問題の類題をPythonで解きます。
(解法に詰まって調べたとき、C++の解法が多くPythonしか分からない私では参考にできなかったため。)
*競プロ & Python初心者のため、解法やコードの改善例、別解等アドバイス頂けますと大変ありがたいです。

# [ABC 082 B – Two Anagrams](https://atcoder.jp/contests/abc082/tasks/abc082_b)

**【問題文】**
英小文字のみからなる文字列 s, t が与えられます。 あなたは、s の文字を好きな順に並べ替え、文字列 s′を作ります。 また、t の文字を好きな順に並べ替え、文字列 t′を作ります。 このとき、辞書順で s′

元記事を表示

オンライン畳み込み

# この記事の目的

オンライン畳み込み(Relaxed Convolution [^ref1] または Relaxed Multiplication [^ref2] などとも呼ばれるようです)を $O(N(\log N)^2)$ で処理する方法について書きます [^bunkatsu] 。

[^bunkatsu]: 分割統治 FFT とも呼ばれるようですが、本稿では分割統治の考え方は使っていません。結果的には似たような処理をやっていることになりますが。

[^ref2]: New algorithms for relaxed multiplication

畳み込みがオンラインとは、 $A$ および $B$ の各項が前から順に与えられたとき、その都度、畳み込み $C=A*B$ の各項を順に返すことを言います [^online]。詳細は後述します。
[^online]: 参考文献では Relaxed という用語が使われていますが、「オンライン」の方

元記事を表示

OTHERカテゴリの最新記事