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

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

Flaskについてまとめ8 問い合わせフォーム作成概要

https://qiita.com/TaichiEndoh/items/be649037de0733e2887e

ここからは更に発展させてminimalapp 問い合わせフォームの作成概要を記載します

# PRGパターン

PRGパターンは、Post Redirect Getの頭文字を繋いだものになります
これは、POSTメソッドでリクエストを受け取った場合、
そのメソッドの処理の終わりに必ずRedirectし、
処理後の結果はGetメソッドで呼び出せる画面に返しましょうというデザインパターンです

https://zenn.dev/imah/articles/3d186a6462ecc8

1.問い合わせフォーム 画面を表示する(GET)
2.問い合わせ内容を メールで送信する(POST)
3.問い合わせ完了 画面へリダイレクトする(REDIRECT)
4.問い合わせ完了 画面を表示する(GET)

https://gmotech.jp/semlabo/seo/blog/url_redirect/

リダイレクトとは、WebサイトやページのURLを変更した際
古いURLにアクセ

元記事を表示

AtCoder Beginner Contest 252の復習, E問まで(Python)

[ABC252](https://atcoder.jp/contests/abc252)に参加しました。復習用記事です。

ここで書く解は解説や他の人の提出を見ながら書いたものです。自分が実際に提出したものとは限りません。

## [A – ASCII code](https://atcoder.jp/contests/abc252/tasks/abc252_a)

英小文字の文字コード(番号)を文字に変換する問題です。

pythonでは変換用の関数が用意されています。

“`py
N = int(input())

print(chr(N))
“`

## [B – Takahashi’s Failure](https://atcoder.jp/contests/abc252/tasks/abc252_b)

数列Aの最大値となる要素の位置番号が数列Bに含まれているかを調べる問題です。

制約条件が緩いのでどうやってもいいです。

「配列A内で最大となるインデックスの配列」を作り、「配列B」との重複する要素をset型で取り出すのが綺麗でしょうか。

インデックスの値に1を加

元記事を表示

AtCoder Beginner Contest 252 参戦記

# AtCoder Beginner Contest 252 参戦記

## [ABC252A – ASCII code](https://atcoder.jp/contests/abc252/tasks/abc252_a)

1分で突破. 書くだけ.

“`python
N = int(input())

print(chr(N))
“`

## [ABC252B – Takahashi’s Failure](https://atcoder.jp/contests/abc252/tasks/abc252_b)

4分半で突破. 書くだけ.

“`python
N, K = map(int, input().split())
A = list(map(int, input().split()))
B = list(map(int, input().split()))

x = max(A)
if len(set(B) & set(i + 1 for i in range(N) if A[i] == x)) > 0:
print(‘Yes’)
else:
print

元記事を表示

パナソニックグループプログラミングコンテスト2022 (AtCoder Beginner Contest 251) 参戦記

# パナソニックグループプログラミングコンテスト2022 (AtCoder Beginner Contest 251) 参戦記

## [ABC251A – Six Characters](https://atcoder.jp/contests/abc251/tasks/abc251_a)

2分で突破. 書くだけ.

“`python
S = input()

print((S * 6)[:6])
“`

## [ABC251C – Poem Online Judge](https://atcoder.jp/contests/abc251/tasks/abc251_c)

10分?で突破. オリジナルでないものを弾いて、得点、提出順の2キーソートをして終わり. 2キーソートが無ければ、安定ソートで提出順、得点の順で2回ソートすればOK.

“`python
from sys import stdin

readline = stdin.readline

N = int(readline())
a = []
s = set()
for i in range(N):
S,

元記事を表示

[2022年版]実体験をもとに独学でプログラミング学習するためのロードマップを紹介

# はじめに

今回は「**独学でプログラミング学習するロードマップ**」について紹介していきます。

「**独学でプログラミング学習したいけど何すれば良いかわからない…**」

「**独学でプログラミング学習してるけど、このやり方でいいのかな?**」

「**独学でエンジニアなるに何したら良い?**」

あなたはこんな悩みを抱えていませんか?

この記事を読むことで、「**独学でプログラミング学習する手順**」がわかり、**エンジニアになるにはかなにをすればよいか**までわかります。

前置きは早々に早速ロードマップを見ていきましょう!

# ロードマップ全体

まずは独学でプログラミング学習するロードマップの全体を見ていきましょう。

::: note
– 下調べ
– 動画でインプット
– 書籍でインプット
– 基礎アウトプット
– 応用アウトプット
:::

この5ステップが全体の構成です。

1つ1つ丁寧に確認していくので少し長くなってしまいますが、ぜひエンジニアを目指している方や独学でプログラミング学習しようとしている方、学習中の方の参考になれば幸いです。

# 下調べ

元記事を表示

ezdxfを使ってみよう#4~寸法編~

この章では寸法線の描画についてまとめます。

前章はこちら:[#3~レイヤー・dxfattribs 図形の属性・描画の補足編~](https://qiita.com/Rai-see/items/294a36b84ae13eb1077f)

1. **寸法の注意点**
1. **直線の寸法**
1. **半径・直径の寸法**
1. **角度の寸法**
1. **弧の長さの寸法**

## 寸法の注意点 ##
寸法の文字や矢印の大きさ・位置・種類は下記の様に**dimstyles**で定義されます。
“`Python:dimstyles.add
doc.dimstyles.add(“my_radiusdim”, dxfattribs={“dimtxt”:20, “dimtad”:1, “dimtmove”:2, “dimatfit”:1, “dimfxl”:10})
“`
属性は
とても種類が多い上、寸法は環境により再現が左右されるので、各リンクを参照していただきたいです。

matplotlibで寸法線を確認するためには **.render()** が必要になります。他の図形とは異

元記事を表示

久しぶりのPython3系環境構築でエラーにハマった

# 前提条件
– MacBook Pro (14インチ、2021)
– macOS Monterey
– バージョン 12.2.1
– チップ Apple M1 Pro

# 事前確認
新型MacBook ProはデフォルトでPython2系がインストールされています。
“`
$ python -V
Python 2.7.18
“`
Python3もインストールされてるか確認します。
ひとによっては入ってないかも。
“`
$ python3 -V
Python 3.8.9
“`
# pyenvのインストール
“`
$ brew install pyenv
$ pyenv -v
pyenv 2.3.0
“`
# 「.zshrc」と「.zprofile」の設定
ここが問題でpyenvのアップデートでpythonの環境変数を指定しないといけなくなったことが原因らしいです。下記コマンドを叩いてください。

“`
// .zshrc
$ echo ‘eval “$(pyenv init -)”‘ >> ~/.zshrc
$ cat .zshrc

// .zprofile
$ ec

元記事を表示

Python+Pillowで、任意の文字列を画像で出力する

もし任意の文字列を画像化できれば、たとえばSlackの絵文字ジェネレータを自作するなど、面白い使い道があるかと思い、やってみました。

## 使うもの

– Python
– Pillow
– [Pillow — Pillow (PIL Fork) 9.1.1 documentation](https://pillow.readthedocs.io/en/stable/)
– 無い場合は`pip install pillow`で入ります

## サンプルのコード

とりあえず画像を出力する、だけのコードは以下。

“` python
from PIL import Image, ImageDraw, ImageFont

# RGB, 画像サイズ, 背景色を設定
im = Image.new(“RGB”, (512, 512), (256, 256, 256))

draw = ImageDraw.Draw(im)

# PCローカルのフォントへのパスと、フォントサイズを指定
font = ImageFont.truetype(‘C:/Windows/Fonts/m

元記事を表示

オレオレサイト内通貨を作るAPIを作りました

# はじめに
**PS: この記事は1年以上熟成されたまま、放置されていた記事ですもはや何も詳細を覚えていません**

個人的に作っている、あるサイト内でのみ使える専用通貨機能を作りたい。
そのサイトはLINEで使えるBotと今後連携したいので、あらゆる機能はAPIで提供されるようにしたい。
こういう機能は色んなサイトで見かけるし、どっかで公開されてるのではと思ったが、
それっぽいことができる単独のAPIはざっと調べた限り見当たらない。
なので作ってみることにしました。

※以下、サイト内専用通貨を お金 と呼びますが、リアルマネーではありません。

## 説明要らないからコード見せてって方向け
https://github.com/Dosugamea/ToyMoney

## 使用したもの
Python3.6
FastAPI
SQLAlchemy

### ブロックチェーン技術を使わない理由
Ethereumとかのフォークで自作通貨が作れるってのは昔聞いたことがあるんですが、
どうにも構成がめんどくさそう(つまり面倒)、そして個人サイトで使うのでどうせ中央集権
ってことで普通のAP

元記事を表示

SplunkでPythonスクリプトを実行する

## はじめに

1. SplunkでPythonスクリプトファイルを実行する方法について
2. Splunkで外部ライブラリをインストールする方法について

## 1.Pythonスクリプトファイル実行

1.まず初めに任意のフォルダ内にPythonスクリプトファイルを格納する
(※ここではD:\temp\test.pyに作成)

“`python:test.py
print(“Hello Python”)
“`
2.Splunkをインストールしたフォルダの.\binで以下のコマンドを実行する

“`
~\Splunk\bin>splunk cmd python D:\temp\test.py
Hello Python
“`
“splunk cmd”を使用することで、Pythonスクリプトを実行可能となる。
また、以下で対話式によるpythonの実行も可能である。
“`
~\Splunk\bin>splunk cmd python
>>>
“`

## 2.外部ライブラリをインストールする
スクリプト実行時と同じように、”splunk cmd”を使用する。
ここではpan

元記事を表示

【Python】「正方形さん」を作ってみた

# デスクトップ上で「正方形さん」を使いたい
「一眼レフで撮影した縦画像をInstagramに投稿する際、上下がトリミングされてしまう…」
「写真に余白をつけてすっきり見せたい…」
そんな時に重宝していたのが「正方形さん」というアプリ。

![スクリーンショット 2022-05-21 205133.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2649917/2ecc54ca-43ec-23c7-ee18-3e4a388318f6.png)

このアプリは画像が正方形になるように白埋めしてくれます。

しかし、わざわざスマホ上で一枚一枚変換するのも面倒なので、PC上で一括でできると良いな~と思っていました。

「[Ralpha](https://forest.watch.impress.co.jp/library/software/ralpha/)」などのデスクトップ向けフリーソフトもあるようですが、機能としては「写真に余白をつける」程度のものなので、さっと自分で作ってみようと思った次第です。

# 自

元記事を表示

python3.6系で`get-pip.py`するとエラーが起きた際の解決策の備忘録

python3.6系で`get-pip.py`するとエラーが起きた際の解決策の備忘録

“`sh
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py
“`

“`sh
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo apt install python3.7
python3.7 get-pip.py
“`

# 参考

https://qiita.com/hsawaji/items/5ec5533e95a42bbfa4b5

https://stackoverflow.com/questions/54633657/how-to-install-pip-for-python-3-7-on-ubuntu-18

https://bootstrap.pypa.io

元記事を表示

Pythonで地名/住所から緯度/経度を取得し地図にプロットする方法

# はじめに
Pythonプログラムで即業務に役立つサンプルプログラムとして、地名/住所から緯度/経度を取得し地図にプロットするプログラムを作成しましたので、共有します。

# 動作環境
Visual Studio Code
Python3.9.1
# 各種インストールライブラリー
geocoder 1.38.1
geopy 2.2.0
googlemaps 4.6.0
# 処理概要:
地名や住所一覧から、緯度、経度の情報を取得して、地図にプロットするプログラムです。
![処理概要.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1361368/5b3c145e-78f9-5a8f-6c8e-1ace91b5a758.jpeg)

# YouTubeでの解説:
プログラムの詳細やGoogleCloudPlatformでのAPIの取得方法などはYoutubeで詳しく解説していますので、ぜひ、ご覧ください。