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

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

40代おっさんPythonを勉強する。

## 本記事について

この記事はプログラミング初学者の私が学んでいく中でわからない単語や概要を分かりやすくまとめたものです。
もし不正などありましたらコメントにてお知らせいただければ幸いです。

## Pythonの基礎

– Pythonのすべて(基本のデータ型、大きなデータ構造、関数、プログラムなど)がオブジェクトとして実装されている。
– 一貫性かつ便利な機能
– 変数に値やデータを代入できる(変数とはコンピューターのメモリの中にある値を指す名前)
– 変数名(識別子という)
変数名は
– 数字は変数名の先頭で使えない
– アンダースコアが先頭になっている変数名は特別扱いする
– クラス内の変数やメソッド:慣例的な意味合い
– 関数:システム的な制約を受ける場合がある
– 予約語は関数名として使えない

予約語の確認

“`python
import keyword
keyword.kwlist
“`

## 基本的なデータ型

↓↓↓↓↓↓↓ あなたの記事の内容
・整数型(int)
・浮動小数点数型(float)

元記事を表示

神エクセルをHTMLに!Python編 その2

# はじめに
神エクセルとか、ネ申エクセルとか、方眼紙エクセルとか呼ばれる評判の悪い奴がありますよね。

本記事は、そいつをHTML形式のフォームにするシリーズ2回目です。pythonのopenpyxlを使用します。

[前回の記事](https://qiita.com/yoho/items/571902c129cce9d12e62)はこちらです。

## 今回
前回は、エクセルの行と列の幅を取り出すのに、結構ハマったので記事にしたのですが、その後はまりどころはほとんどなく、完成してしまいました。

pythonはそんなに得意というわけでもないので解説記事にするのは躊躇します。どうしようかと考えていましたが、面倒になったので解説なし!でコードを貼り付けておきます。

もし、これはもっと短く書ける!などご指摘がありましたらよろしくお願いいたします。

### 対応したもの
何もかもにも対応という訳にはいかず、対応したのは以下のみです。

| エクセル中の表現 | 対応状況 |
|:-:|:-:|
|セルの結合状態| 対応 |
|セルの枠線|hair、thin、medium、thickの

元記事を表示

pythonのモジュールを実行するときのコマンド

# バージョン
Python 3.10.5

# 結論
import ファイル名

# 具体例
例)test.py
import test

# 補足
モジュール:○○○.pyという、1つのファイルにまとまった機能の集まりのこと。

元記事を表示

[OCR]情景文字認識(Scene Text Detection) pythonライブラリー

## 概要

今回はあるSTD(scene text detection)ライブラリーを使う感想を記録したいんです。

[github](https://github.com/breezedeus/cnstd)

>CnSTD 是 Python 3 下的场景文字检测(Scene Text Detection,简称STD)工具包,支持中文、英文等语言的文字检测,自带了多个训练好的检测模型

`CnSTD`ライブラリーの実行環境は`Python 3`で、中国語、英語など言語も文字認識もできます。中身は学習済の`machine learning`モデルも含まれています。

## インストール

docker環境以下実行し、CnSTDは`openCV`を使い、まずは`libgl1-mesa-dev`をインストールする必要があります。

“`
apt-get install -y libgl1-mesa-dev
“`

cnstdをインストール(デフォルトのmachine learningモデルも含まれているので、ちょっと重いかもしれません。)

“`
pip install cnst

元記事を表示

【Python】マイグレーションツールAlembicを触ってみる

SQLAlchemyで使えるマイグレーションツールAlembicの使い方を調べました。
自分の中でベストな構成(今のところ)が完成したので残しておきます。

https://alembic.sqlalchemy.org/en/latest/

# 準備

“`bash
$ python3.8 –version
Python 3.8.13

# venv
$ python3.8 -m venv .venv
$ source .venv/bin/activate

# パッケージインストール
$ pip install alembic pymysql SQLAlchemy

# ディレクトリ作成
$ mkdir -p db models
$ touch db/__init__.py models/__init__.py

# データベース作成
$ MYSQL_PWD=”XXXXXXXXX” mysql -u user -h somedb.example.com -e “create database alembic_tutorial”
“`

# ディレクトリ構成

“`
a

元記事を表示

コマンドプロンプトで実行するPythonスクリプトにおけるANSIカラーの出力

WindowsのコマンドプロンプトでPythonのスクリプトを実行し,コンソールへの出力に色を付けたり太字にしたりする方法です.

# 短いサンプルコード

“`py
import os
os.system(”)
print(‘\033[31mRed\033[0m’)
“`

コンソールへの出力は次のとおりです(サンプルコードをmain.pyとして実行):
![foo.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/425475/46333304-4d9e-344b-c139-9a825bb0ff36.png)

# 解説
サンプルコード2行目の`os.system(”)`は引数のコマンドをサブシェルにて実行します[1].Windowsの場合通常はコマンドプロンプトです.引数が`”`のため単にサンプルコードのプロセス上で機能し始めるだけです.
PythonインタプリタはANSIエスケープシーケンスの処理を有効にしないので`os.system(”)`を使用してください[2][3].

# 補足

元記事を表示

Gradioとは? Pythonで機械学習Webアプリケーションをサクッと作ろう!

## Gradioとは

![スクリーンショット-2022-10-03-13.37.09-2048×996.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/171715/3dd81571-d2d4-3fad-984e-98aeeaa173af.png)

[Gradio](https://gradio.app/)とは、機械学習モデルのデモを行うWebアプリケーションを簡単に作ることができるPythonのライブラリーです。
この記事では解説致しませんが、Gradioで作成したWebアプリケーションは、[HuggingFace](https://huggingface.co/)の[Spaces](https://huggingface.co/spaces)でアプリを公開することができます。(現時点では、Gradio以外にも、[Streamlit](https://streamlit.io/)をサポートしています。

Gradioの公式ページより、デモアプリケーションを確認できます。
![スクリーンショット-

元記事を表示

TelloConsole ビギナーガイド:Python の環境構築

# Tello Console を始めるための環境を構築する
 このサイトは、Tello Console の環境を構築する方法を記述します。python、tello プログラミング初心者向けとなります。
ここでは、python を使って tello ドローンをプログラミングするまでに必要な環境を構築します。tello、TelloConsoleについて詳しく知りたい方は、[こちらの**Tello SDK を自分なりに最適化してみた(Tello-Console)**](https://qiita.com/GAI-313/items/7ff5bece03e9173678fb)を参照してください。
 気をつけてほしいのが、使用しているPC の応じて環境構築の方法が異なります。そのため Widows、macOS、Ubuntu での環境構築方法をセクションを分けて記述します。
**注意:ここでいう Python は、Python 3 のことを指します。**

– [Tello Console を始めるための環境を構築する](#tello-console-を始めるための環境を構

元記事を表示

TelloConsole ビギナーガイド:サンプルコードの実行

# Tello Console をのサンプルコードを実行する
 この記事は、**TelloConsole チュートリアル第2項**となります。初めてこの記事を見られた方、もしくは Python の環境をお持ちでない方は **[Tello Console を始めるための環境を構築する](https://qiita.com/GAI-313/items/ead355cb552d13405cc9)** を参照してください。この記事では、TelloConsole をダウンロードして実際に Tello をサンプルコードで飛ばしてみます。この記事は初心者向けに作成されています。
 前提として、Tello EDU を用意してください。Tello EDU は[こちら](https://store.dji.com/jp/product/tello-edu?set_region=JP&vid=47091)で購入できます。

## TelloConsole をダウンロードする
 TelloConsole は、[GitHub](https://github.com/GAI-313/Tello-Conso

元記事を表示

【解決法】ModuleNotFoundError: No module named ‘chromedriver_binary’

– ファイル実行

“`terminal
$ python3 ファイル名
“`

– 失敗

“`terminal:例
sample@SampleMBP Selenium % python3 sample.py
Traceback (most recent call last):
File “/Users/username/Desktop/Selenium/sample.py”, line 1, in
import chromedriver_binary
ModuleNotFoundError: No module named ‘chromedriver_binary’
“`

`chromedriver_binaryが見つからんぞ。`と。

# 解決までの手順

## 1. ブラウザ上でChromeのバージョンを確認

ツールバーから「GoogleChromeについて」をクリック
![スクリーンショット 2022-10-02 19.15.07.png](https://qiita-image-store.s3.ap-northeast-1.am

元記事を表示

ブロックチェーンを実装してみた & 改ざんを試みた

# はじめに
最近、Web3に関するツイートやニュースの中でも、Non-Fungible Token (NFT)を目にすることが多い。
NFTはブロックチェーンに基づいた技術で、その改ざん不可能性が肝となっているらしい。
以前からブロックチェーンの改ざん不可能性については知っていたものの、
– なぜ改ざんが不可能なのか
– 改ざんを試みると、どうなるのか

といった疑問が残っていた。
今回は、これらの疑問を解決すべく、自分でブロックチェーンを実装し、送金データの投入を行う。更に、送金データの改ざんを試みることで、さらなる理解を目指す。

# ブロックチェーン
ブロックチェーンは、hash値、data、nonceで構成される「ブロック」がつながったものである。
データを読み取る時は、各ブロックが持っているdataを読み取るのみでよい。
競合する複数のブロックチェーンが存在した時、つながっているブロック数が最大のもののみを信用する。

### hash値
なんらかのデータをhash化することによって得られた値。
“`math
h = H(d)
“`
ここで$h$,$H$,$d$はそ

元記事を表示

AtCoderでよく使いそうな関数メモ

# この記事は何?
AtCoderでよく使いそうな関数たちをまとめた記事です。

# 記事を作成した背景
AtCoder挑戦時に毎回検索して時間を使っているなぁ。。。
-> 関数をまとめて記事にしておいたら自分に必要な関数だけ参照できるのでは?
-> 関数まとめた記事を書いて、辞書みたいに使おう!

# 入力を受け取りたい
AtCoderの入力パターンは下記かな、という認識です。
1. 入力値が1つだけある
– `10`など
1. 入力値がスペース区切りで複数ある
– `1 2 3`など

## 1. 入力値が1つだけある
### 例:文字列として入力を取得
“`python: 入力に「test」が与えられる
x = input()
print(x)
# -> test
“`
### 例:数値として入力を取得
“`python: 入力に「10」が与えられる
# intで型変換をする
x = int(input())
print(x)
# -> 10
“`

## 2. 入力値がスペース区切りで複数ある
### 例:文字列として入力を取得
“`python: 入

元記事を表示

Flaskで立てたサーバーが外部からアクセスできない場合に確認すべきこと

# 外部からアクセスできない場合に確認すべきこと

flaskでサーバーを立ち上げたときにlocalhostからは通信が可能だが、外部から通信ができない場合に確認すべきことについてまとめました。先日ひどいめにあったので。
flask関係なく通信エラー時に確認すべきことも含みます。

## サンプル

一番シンプルなサンプルコードを載せます。
flaskコマンドではなくpython側で実行してるので、flaskコマンド使用者はうまく読み替えてください。
問題ない方はここは読み飛ばしても構いません。

“`python
from flask import Flask

app = Flask(__name__)

@app.route(“/”)
def hello_world():
return “

Hello, World!

def main():
app.run()

if __name__ == ‘__main__’:
main()
“`

こちら実行すると、以下のような出力になります。アクセス時の出力も出てます。

“`she

元記事を表示

【解決法】Error: pg_config executable not found.

# エラー対処

ライブラリインストール時のエラーを書き留めておきます

### 事前準備
“`terminal
$ cd ~/対象プロジェクトまでのpath
$ python -m venv env # pythonの実行環境を仮想的に作成(envは名称なので任意でOK)
$ . env/bin/activate # 作成した仮想環境のバッチを実行し、仮想環境への切り替えを行う
“`
“`requirements.txt
省略
psycopg2==2.9.3
“`

### エラー発生

“`terminal
$ pip install -r requirements.txt # 一括でライブラリをインストール
“`

“`terminal:terminal
(env) (base) sample@SampleMBP 対象プロジェクト % pip install -r requirements.txt
Collecting asgiref==3.2.10
Using cached asgiref-3.2.10-py3-none-any.whl (19 kB)
Col

元記事を表示

Python(3.10.7)をWindowsにインスコするの巻

## はじめに…
Pythonの入れ方を細かく説明したつもりです
わからないとこあったらコメントしてネ

## とりあえずダウンロードします
公式サイトから最新バージョンをインストールします

https://www.python.org/downloads/

リンクに飛んで Download Python 1.10.7を押す
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1004944/bda4cb9e-0f29-996c-020a-276a22523425.png)

## インスコする
ダウンロードしたインストーラーを開く

出てきたら Add Python 3.10 to PATHにチェックを入れる **※絶対**

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1004944/82a5ac12-89ad-01bb-d526-7cbfd120eba2.png)
入れたらCus

元記事を表示

Python & ビット演算でドドスコしてみた

# 今更ドドスコ

こちらが話題になっていた2022年の夏、コロナに罹ってダウンしていたところ完全に乗り遅れてしまったので今更ながらやってみました。
リプで配列を使った例はよく見かけたので今回はPythonのビット演算で実装してみることにします。

# やってみた

コードはこんな感じ。

“`python:ddsk.py
import random

buffer = 0

while True:
buffer = buffer << 1 & 4095 if random.getrandbits(1): buffer |= 1 print("ドド", end="") else: print("スコ", end="") if buffer == 2184: print("ラブ注入♡") bre

元記事を表示

【Pytorch】MNISTのGAN(敵対的生成ネットワーク)を実装する

# はじめに
本記事のコードは以下のnotebookに記載されています。
外部データなど不要ですので、とりあえずGANを動かしてみたいという方は是非触ってみてください。
https://colab.research.google.com/drive/1TQWMTNDbqLQ0dWo4-rFz1mbY80hLIQNo?usp=sharing

# GANとは
GANはGenerative Adversarial Networkの略であり、敵対的生成ネットワークの邦訳が与えられています。
GANはディープラーニングを利用した生成モデルの一種であり、生成器と識別器という2つのネットワークを持ちます。
これら2つのネットワークが互いに競い合うように学習することが、Adversarial(敵対的)の由来となります。

GANは近年、実在しない高精度の画像を生成することに成功しており、非常に注目されている技術です。
加えてGANの本質は2つのネットワークが競い合うように学習する点にあるため、画像生成以外にも多様なタスクに応用が可能です
そこで今回はGANに対する理解を深める為、Pytorchを用い

元記事を表示

pythonで対数グラフ(それと聴覚閾値)

# 初めに
 この数式って本当にこのグラフになるのかな?って不安になることってありますよね。
 今回はそんな自分の不安にpythonで解決しようとした際に出た問題を記事にしています。

# 問題
 最小可聴値あるいは聴覚閾値と呼ばれるグラフを探した際に次のようなグラフが見つかりました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2647158/5c7c1b6b-6c03-9e75-eee6-5bb4e398bcdb.png)
↑wikipediaより

 これをpythonで再現したい。
 xが10の累乗のグラフなので、それが再現できるpythonのコードにしなくてはいけない。

# コード

“`python
import matplotlib.pyplot as plt
import numpy as np
f = np.logspace(1,4,500000,base=10)
ath = 3.64*(f/1000)**-0.8-6.5*np.exp(-0.6*(f/1000

元記事を表示

マイク入力音声をリアルタイムでFFTしてグラフ化する

# 初めに
 この記事はガチでコードだけを置いておこうというやつです。
 なので解説は行っていませんが悪しからず。

# コード

“`python
import pyaudio
import matplotlib.pyplot as plot
import numpy as np

def audiostart():
audio = pyaudio.PyAudio()
stream = audio.open( format = pyaudio.paInt16,
rate = 44100,
channels = 1,
input_device_index = 1,
input = True,
frames_per_buffer = 1024)
return audio, stream

def audiostop(audio, stream):
stream.stop_stream()
stream.close()
audio.terminate()

de

元記事を表示

Flaskアプリケーションのセッション問題

Flaskでアプリケーションを作っていて、ちょっとはまったのでメモ。

## 複数のFlaskアプリケーション

Flask でセッションを使うには、
“`Python
app = Flask(__name__)
app.config[‘SECRET_KEY’] = b’適当なキー文字列’
“`
と設定するのは周知の通り。

たとえば、Flask のアプリケーションを2つ稼働しているとして、
どちらもセッション情報を使う(たとえばログイン情報を保持しておくとか)場合。
同じブラウザの別タグで、それぞれのアプリケーションを開いて、タブを切り替えたりしていると、片方のセッションが消えてしまう現象が発生する。
FlaskはCookie にセッション情報を保存するが、デフォルトだと、”session” という名前になる。
![cookie1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2882462/d690a5c8-0f80-d15f-42df-e2de92226281.png)

アプリケーション1つ

元記事を表示

OTHERカテゴリの最新記事