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

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

PythonであるLambda関数から別のLambda関数を呼び出す

最近あるLambda関数から別のLambda関数を呼び出す処理をする際に少し調べたのでメモ。

# 環境

| ランタイム | Python 3.9 |
| — | — |

# 今回の想定ケース

特定のLambdaから別のLambdaをまるごと呼び出す処理を想定。
今回は、以下の`testFunction01`から`testFunction02`を呼び出すような処理を実現していく。

“`python:testFunction01
def lambda_handler(event, context):
print(‘[testFunction01] testFunction01’)
“`

“`python:testFunction02
def lambda_handler(event, context):
print(‘[testFunction02] Called by testFunction01’)
return {‘message’: ‘called by testFunction01’}
“`

# 実現方法

基本的には[inv

元記事を表示

Pythonで画像のエッジ検出と直線検出をする

# 1.概要
みんな大好き大乱闘スマッシュブラザーズ(以下スマブラ)!!
私事ながら,スマブラ配信をしています.[チャンネル登録お願いします!](https://www.youtube.com/channel/UCKys_FIMcKfIn5L4HOyy0vQ)
スマブラ×機械学習でなんかできないかなー,と思っていたところこんな記事を発見しました.
[画像認識でスマブラの戦績を自動で作成するツールを作ろう](https://note.com/kelp168/n/nf717de3a2d22)
最終的に何を作るかは置いといて,面白そうだしとりあえずやってみよう!

前回,[Pythonで指定した範囲のスクリーンショットを撮る](https://qiita.com/kenshin-627/items/56b4d945ac63ad8c541c)ことができました.
今回の目標は,前回撮った画像からエッジ検出と直線検出をすることです.
こんな画像から,
![before.png](https://qiita-image-store.s3.ap-nor

元記事を表示

AtCoder ユニークビジョンプログラミングコンテスト2022冬 D問題解説(Python コード付)

# はじめに 

 本記事はPythonでAtcoderにチャレンジしているけど、Pythonはコード例がないため解説がわかりにくい!と感じている方を対象としています。
 私自身大してレートも高くないので、不備等あるかもしれませんがご了承くださいm(_ _)m
## ユニークビジョンプログラミングコンテスト2022冬 D問題
 問題のURLはこちらです。[ユニークビジョンプログラミングコンテスト2022冬 D問題](https://atcoder.jp/contests/abc283/tasks/abc283_d)

## 使うデータ構造 
 **スタック**を使っていきます。 
 スタックとはなんぞや?って方は[こちら](https://qiita.com/drken/items/6a95b57d2e374a3d3292)の記事を見て見てください。非常にわかりやすく解説してくれています。
 また、今回私はlistを使ってスタックを実装しましたが、collections.dequeを使用した方が計算速度は早いそうです。[こちら](https://qiita.com/saba/item

元記事を表示

Tweepyで作った画像を呟くBOTをGCPで定期実行させる(素人)

# 目次
1. [はじめに](#はじめに)
2. [TwitterAPIkeyを入手してTweepyでツイート](#twitterapikeyを入手してtweepyでツイート)
2.1 [TwitterAPIkeyを入手](#twitterapikeyを入手)
2.2 [Tweepyでツイート](#tweepyでツイート)
3. [GCPで定期実行](#gcpで定期実行)
3.1 [Cloud Functionにデプロイ](#cloud-functionにデプロイ)
3.2 [Cloud Schedularでデプロイしたプログラムを定期実行](#cloud-schedularでデプロイしたプログラムを定期実行)
4. [Cloud Function上にて画像つきでツイート](#cloud-function上にて画像つきでツイート)
4.1[Firebaseに画像を保存 その画像を読み取るkeyを生成](#firebaseに画像を保存-その画像を読み取るkeyを生成)
4.2[入手したkeyを用いて画像を読み取り一緒にツイート](#入手したkeyを用いて画像を読み取り一緒にツイート)

元記事を表示

paizaラーニング「二次元配列の行ごとの和 Python3編」

https://paiza.jp/works/mondai/double_roop_problems/double_roop_problems__row_sum
#### 私の解答
“`Python3
n, k = map(int, input().split())
a = [[int(i) for i in input().split()] for _ in range(n)]

for i in range(n):
ans = sum(a[i])
print(ans)
“`
#### 解答例
“`Python3
n, k = map(int, input().split())
a = [[int(i) for i in input().split()] for _ in range(n)]

for i in range(n):
s = 0
for j in range(k):
s += a[i][j]
print(s)
“`

元記事を表示

paizaラーニング「二次元配列の最大の要素 Python3編」

https://paiza.jp/works/mondai/double_roop_problems/double_roop_problems__search_max
#### 私の解答
“`Python3
n, k = map(int, input().split())
a = [input().split() for _ in range(n)]
max = 0
for i in range(n):
for j in range(k):
if int(a[i][j]) > max:
max = int(a[i][j])
print(max)
“`
#### 解答例
“`Python3
n, k = map(int, input().split())
a = [[int(i) for i in input().split()] for _ in range(n)]

ans = 0
for i in range(n):
for j in range(k):
if a[i][j] > ans:

元記事を表示

roboflowを用いたデータセットのアノテーションのやり方

## 概要
自分で集めたデータセットを学習させてYOLOV5で物体検知をしたい!!
と思ったのですが、アノテーションどうやったらいいの!?
となり、その際にアプリをダウンロードせずにWEB上でアノテーションができるものを見つけたので共有します。

## 目次
– roboflowについて
– roboflowを使ったアノテーション
– プロジェクトの作成
– データセットのアップロード
– アノテーション
– ダウンロード

## roboflowについて
まずそもそもroboflowってなんぞ?って方にroboflowの説明をしたいと思います。
(roboflowの使い方を見にきてるんだって方は飛ばしてください、、)


roboflowは、学習用のデータアップロードからデータ整理、ラベリング、画像処理、学習、モデル配置、組み込み、アクティブラーニングまで一連で行えるAI活用を加速するためのコンピュータビジョンプラットフォームです。(roboflow公式から引用)

[roboflow公式サイト](https://www.systems.nakas

元記事を表示

paizaラーニング「二次元配列での要素の検索 Python3編」

https://paiza.jp/works/mondai/double_roop_problems/double_roop_problems__search
#### 私の解答
“`Python3
n, k = map(int, input().split())
a = [input().split() for _ in range(n)]

for i in range(n):
for j in range(k):
if int(a[i][j]) == 1:
print(i+1, j+1)
“`
私は数値として扱っていますが、解答例は文字として扱っています。
#### 解答例
“`Python3
n, k = map(int, input().split())
a = [input().split() for _ in range(n)]

for i in range(n):
for j in range(k):
if a[i][j] == “1”:
print(i + 1, j

元記事を表示

【python】勉強メモ 速習Flask⑥

## はじめに
今回は、ログイン機能を実装します。

以下の記事の続きとなります。
[【python】勉強メモ 速習Flask①](https://qiita.com/qiitataro/items/d9b4b44255ae5082838a)
[【python】勉強メモ 速習Flask②](https://qiita.com/qiitataro/items/682faa9749d596cb3496)
[【python】勉強メモ 速習Flask③](https://qiita.com/qiitataro/items/5f12300c4b238d2b6170)
[【python】勉強メモ 速習Flask④](https://qiita.com/qiitataro/items/ae5eca426fbf7d1bea83)
[【python】勉強メモ 速習Flask⑤](https://qiita.com/qiitataro/items/8d7027f97e20a6e07cbc)

## 前回までの環境
#### ディレクトリ構造
“`
pydir/
┣myproject/ ->仮想環境

元記事を表示

paizaラーニング「二次元配列の出力 Python3編」

https://paiza.jp/works/mondai/array_primer/array_primer__2dmatrix_input_step4

前にも同じ問題があったので、私の解答は省略しました。

解答例だけ異なったので、記録に残すことにしました。
#### 解答例
“`Python3
n, k = map(int, input().split())
a = [input().split() for _ in range(n)]

for i in range(n):
for j in range(k):
if j == k – 1:
print(a[i][j])
else:
print(a[i][j], end=” “)
“`

元記事を表示

paizaラーニング「指定された範囲・行数の数字の出力 Python3編」

https://paiza.jp/works/mondai/double_roop_problems/double_roop_problems__print_range
#### 私の解答
“`Python3
n, k = map(int,input().split())
for _ in range(k):
for i in range(1, n+1):
if i == n:
print(i)
else:
print(i, end=” “)
“`
前の問題の解答例に倣ったので、同じでした。
#### 解答例
“`Python3
n, k = map(int, input().split())
for _ in range(k):
for i in range(1, n + 1):
if i == n:
print(i)
else:
print(i, end=” “)
“`

元記事を表示

paizaラーニング「指定された行数の数字の出力 Python3編」

https://paiza.jp/works/mondai/double_roop_problems/double_roop_problems__print_column
#### 私の解答
“`Python3
n = int(input())
for i in range(n):
print(“1 2 3 4 5″)
“`
二重ループメニューの問題集なので、私の解答は、手抜きでした^^;
#### 解答例
“`Python3
n = int(input())
for _ in range(n):
for i in range(1, 6):
if i == 5:
print(i)
else:
print(i, end=” “)
“`

元記事を表示

paizaラーニング「指定された数字までの出力 Python3編」

https://paiza.jp/works/mondai/double_roop_problems/double_roop_problems__print_column_new
#### 私の解答
“`Python3
n = int(input())
for i in range(1,n):
print(i, end=” “)
print(n)
“`
#### 解答例
“`Python3
n = int(input())
for i in range(1, n + 1):
if i != n:
print(i, end=” “)
else:
print(i)
“`

元記事を表示

[python] ISO8601 UTC文字列からJST datetime変換

# pythonでUTC文字列をJST datetimeへ切り替える方法

“`python:
from datetime import datetime, timezone, timedelta

str_utc = ‘2022-12-05T04:58:38Z’
dt_jst = datetime.strptime(str_utc, ‘%Y-%m-%dT%H:%M:%SZ’).replace(tzinfo=timezone(timedelta(hours=0))).astimezone(tz=timezone(timedelta(hours=+9)))
print(‘{}’.format(dt_jst.strftime(‘%Y-%m-%d %H:%M:%S %z’)))
“`
以下出力
“`
2022-12-05 13:58:38 +0900
“`

1. strptimeだとtimezoneが付けられないので[replace](https://docs.python.org/ja/3/library/datetime.html#datetime.datetime.repla

元記事を表示

アルゴリズム実技検定(PAST) 第11回 G問題 Python解答例(木の判定)

Supershipの名畑です。
今年も残り3日半ですね。

[アルゴリズム実技検定(PAST)](https://past.atcoder.jp/)の過去問シリーズです。第11回G問題の私の解答例(Python3)を公開します。

:::note info
「そもそもアルゴリズム実技検定ってなんですか?」という方は[こちらの記事](https://qiita.com/nabata/items/0421f20e8ec849ee70ad)を合わせてご覧いただけますと幸いです。
:::

## 第11回 G問題 木の判定

### 問題

[G – 木の判定](https://atcoder.jp/contests/past202206-open/tasks/past202206_g)

### 言語

– Python (3.8.2)

### 解答例

グラフにおける木の条件を

– すべての頂点が連結している
– 閉路を持たない

とすると**辺数がN-1であること**が問題で保証されているため、前者が満たされれば後者も満たされる。

“`
N = int(input())

# 各

元記事を表示

ZeroNetを使う

# きっかけ
こういうの興味あったから

# 環境
– Ubuntu22.04 LTS
– Python3.9.7

# 注意
なんかこの記事を書いてたら公式の方のissueに[不穏な内容のissue](https://github.com/HelloZeroNet/ZeroNet/issues/2823)が上がってました

もしかしたらZeroNetXを使うほうがいいかも?

本記事の内容を試すのは**自己責任**でお願いします

# やってく
早速公式サイトからd……って言いたいところですが、**実はZeroNetの公式Githubの更新は一年以上されていません**

さらに、**TorのOnion v3に対応していません**

~~終いにはissueで「開発者どこいったん?」と聞かれる始末~~

ちなみに実際に使ってみましたが、**結構遅いです**

Non Peerがずっと表示される

以上の理由から公式のやつは使いません

# 代替品
[zeronet-conservancy](https://github.com/zeronet-conservancy/zeronet-co

元記事を表示

paizaラーニング『フィボナッチ数』

https://paiza.jp/works/mondai/array_primer/array_primer__fibo

解らなかったです。。。

#### 解答例
“`Python3
N = int(input())

fibo = [0] * N
fibo[0] = 0
fibo[1] = 1

for i in range(2, N):
fibo[i] = fibo[i – 2] + fibo[i – 1]

for ele in fibo:
print(ele)
“`

元記事を表示

paizaラーニング「二点間の距離 2 Python3編」

https://paiza.jp/works/mondai/array_primer/array_primer__array_distance_step2
#### 私の解答
“`Python3
N, A, B = map(int,input().split())

X = [0] * N
Y = [0] * N
for i in range(N):
values = input().split()
X[i] = int(values[0])
Y[i] = int(values[1])

print(abs(X[A-1] – X[B-1]) + abs(Y[A-1] – Y[B-1]))
“`
#### 解答例
“`Python3
values = input().split()
N = int(values[0])
A = int(values[1])
B = int(values[2])

X = [0] * N
Y = [0] * N
for i in range(N):
values = input().split()
X[i]

元記事を表示

paizaラーニング「二点間の距離 1 Python3編」

https://paiza.jp/works/mondai/array_primer/array_primer__array_distance_step1
#### 私の解答
“`Python3
n = int(input())
for i in range(n):
values = input().split()
ans = abs(int(values[0]) – 2) + abs(int(values[1]) – 3)
print(ans)
“`
#### 解答例
“`Python3
N = int(input())

X = [0] * N
Y = [0] * N
for i in range(N):
values = input().split()
X[i] = int(values[0])
Y[i] = int(values[1])

for i in range(N):
print(abs(X[i] – 2) + abs(Y[i] – 3))
“`

元記事を表示

paizaラーニング「ある数以上以下の要素の列挙 3 Python3編」

https://paiza.jp/works/mondai/array_primer/array_primer__array_ave_step3
#### 私の解答
“`Python3
n = int(input())
a = list(map(int, input().split()))
total = sum(a)
k = total/n
for ele in a:
if ele >= k:
print(ele)
“`
#### 解答例1
“`Python3
N = int(input())

avg = 0
A = [0] * N
values = input().split()
for i in range(N):
A[i] = int(values[i])
avg += A[i]

avg /= N
for a in A:
if a >= avg:
print(a)
“`
#### 解答例2
“`Python3
N = int(input())
A = [int(x) for x in input().

元記事を表示

OTHERカテゴリの最新記事