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

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

Python clickの案外知られていない機能

# Python clickの案外知られていない機能

Pythonには[click](https://click.palletsprojects.com/en/latest/)というコマンドラインパーサとして使えるライブラリがあります。同様のライブラリとして以前から[argparse](https://docs.python.org/ja/3/howto/argparse.html)がありますが、clickはargparseよりももっと簡単に使えるライブラリです。
clickでコマンドラインパーサを書く例は以下になります。

“`python
# main.py
import click

@click.command()
@click.option(
“–count”,
type=int,
default=1,
required=True,
help=”Number of greetings.”,
)
@click.option(
“–name”,
type=s

元記事を表示

Pythonを用いた数値積分

#はじめに
 Pythonの使い方に慣れるため,色々な記事を参考にしながら,Pythonを使った簡単な数値積分の方法をまとめてみました.
 今回は 例として,$\int_{a}^{b}x^2dx\quad a=0,b=3\hspace{5pt}$の積分を行います.

#目次
1.[ SciPy,Sympyを使用する方法](#scipysympyでの数値積分)
・[定積分](#定積分)
・[不定積分](#不定積分)

2.[ ライブラリを使用せずに求める方法](#ライブラリを使用せずに求める方法)
・[区分求積法](#区分求積法)
・[台形公式](#台形公式)
・[シンプソン法](#シンプソン法)

#SciPy,Sympyでの数値積分

Scipyでの積分方法の例

|種類||
|:—:|:—:|
|quad|求積法(1変数)|
|dblquad|2重積分|
|tplquad|3重積分|
|trampz|台形公式|
|simps|シンプソンの公式|

普通,関数の積分にはquad

元記事を表示

python –versionの出力は、python3.4からstdoutに出力されるようなっていた

少しハマったのでメモです

`python –version`の出力は、python3.4からstdoutに出力されるようなっていた

検証コード

“`python:test.py
import subprocess
ret = subprocess.run(“python –version”, shell=True, stdout=subprocess.PIPE , stderr=subprocess.PIPE ,encoding=”utf-8″)
print(ret)
“`

“`python:python2.7の場合
python3 test.py
CompletedProcess(args=’python –version’, returncode=0, stdout=”, stderr=’Python 2.7.17\n’)
“`

“`python:python3.7の場合
$ python3 test.py
CompletedProcess(args=’python –version’, returncode=0, stdout=’Python 3.

元記事を表示

`python3`系を使いたいのに、`python`と実行すると`python2`系が使われてしまう時の対策

例えば、以下のように実行すると`python2`系が使われてしまう

“`
$ python –version
Python 2.7.17
“`

`/usr/bin/python`を`/usr/bin/python3`のシンボリックリンクにする方法もあるが、それが難しい事もある。
この場合は、以下のようにエイリアスを設定すれば簡単に`python3`系を使えるようになる。

“`
alias python=”python3″
“`

以下のように確認できる

“`
$ python –version
Python 3.6.9
“`

`~/.bashrc`に記載しておくとターミナル起動時に設定されるので便利

元記事を表示

AOJトライに関する知識知見の記録共有:Volume0-0055

# タスク概要

Sequence

https://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0055

# コード実装例
TIPS

1. 例外処理含む評価パターンを追加
1. 計算誤差比較例を追加

“`Python
import pprint, sys, time

def core(arg, adv=True, n_item=10):
a = arg[0]
s = arg[1] if len(arg) >= 2 else 0
if adv:
d = pow(3, int(n_item / 2))
odds = [d / pow(3, i) * pow(2, i) for i in range(int((n_item + 1) / 2))]
evens = [2 * d / pow(3, i) * pow(2, i) for i in range(int(n_item / 2))]
r = (sum(odds + evens) *

元記事を表示

kivyMDチュートリアル其の肆什肆 Behaviors – Focus篇

ハロー、Qiita!いかがお過ごしでしょうか。

もう寒くないとは言えない(当たり前)時期になってきていますが、どうでしょうか。
体調など崩してはいないでしょうか。

アドベントカレンダーも真っ最中という状況ですね。投稿者はまったく参加していない
のですが、中には投稿している方もいらっしゃるのではないでしょうか。KivyMDはタグ
すらなかったので、まず前提に立たされていないというのは余談ではありますが、投稿
などしなくとも、何か気になる記事など見つかったでしょうか。

ということで賑わってる中、投稿者はもくもく週1でやっているというのはあるのですが、
本題に入りまして今日はというとFocus篇となります。次回予定のHover篇とどう違うの
だろうと思っているところですが、それを解き明かすのは次回あたりになりそうです。

まず今週は、Focusを解き明かすのが先決でしょうか。では前置きはこのあたりにして
おいてさっそく取り掛かるとします。それでは、レッツラゴ。

## Focus

冒頭にはこう書かれていますね。最初の1文を見てみましょう。

> Changing the backgr

元記事を表示

太陽光の電力検出ユニットとモニターの内容をブラウザから見に行けるようにする方法(+α)

#1.はじめに
我が家の屋根には長州産業株式会社製の太陽光発電システムが載っている。太陽光発電システムでは発電量や売電量を見られるモニターが付属していることが多いと思う。
我が家ではCMCS-P04という型番のモニターと、ここに表示する情報を取得するための電力検出ユニットが付いてきた。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1637818/bf97422f-ab1e-1bd7-15d8-6bceb376bb77.png)
※図は長州産業さんの広告から引用
 https://zz102.secure.ne.jp/~zz102035/pdf/pdf_g51_333w300w275w.pdf

入居当時、我が家にはWi-Fiルーターがなかったため、電力検出ユニットとモニターが直接、無線で接続されていた。
image.png正二十面体に魚眼画像を投影して物体検出やりたい話(正二十面体メッシュ編)

この記事は[DeNA 21新卒×22新卒内定者 Advent Calendar 2021](https://qiita.com/advent-calendar/2021/dena-21×22)の18日の記事です。

こんにちは、22新卒の[@John_bardera](https://twitter.com/John_bardera)です。研究に苦しんでいます。
DeNA 21新卒×22新卒内定者アドカレなんて面白そうなものがあったので飛びついてみたものの、研究かバイトしかしていません。
バイトの方は喋っちゃいけないがあったり、ちょっとマイナーめな技術を使ってたりなので必然的に研究の話をすることになりました。
時間があれば、低温調理器作ってみた!とかPC電源解体して実験用の電源作ってみた!とか電動スタンディングデスク作ってみた!とかやりたかった。。

さて今回は研究でやっていることの一部なのですが、正二十面体を使った魚眼画像の物体検出の話をします。
ただ、物体検出をやるまで書こうと思っていたのですが、研究の合間にやってる&記事のカロリーが大きかったので泣く泣く分割させていただきました。

元記事を表示

Series.dt.strftime( )とは?

![c6h7rok9c2v31.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1076905/e2fff834-99f8-75de-80a6-9b26f9126db6.jpeg)
#Series.dt.strftime( )とは?

たまに見かけるシリーズ型の列に対して書いていた.dt.strftime
ご存知の通り日付型の文字列を好きな形で表示できる関数である。
strftimeをさまざまなところで見かけるが、初学者にとってとっつきにくく少しわかりにくい.
そこで今回、調査結果をツラツラと記載していきたいと思う。

“`公式ドキュメントから該当ページ抜粋
Convert to Index using specified date_format.

Return an Index of formatted strings specified by date_format, which supports the same string format as the python standard lib

元記事を表示

paiza ダンジョンのデッドロック 3 未完

https://paiza.jp/works/mondai/steinsgate/moving_deadlock_step3

※いくつかのテストケースでタイムオーバーとなり解けませんでした。
どうも実力不足のようなので分かり次第修正します。

“`python
N,M = input().split()
M = int(M)
ini,pend,ans,seq = [],[],[],[]
flg = 0

for i in range(M):
ini.append(input().split())

for i in range(M):
ini[i].insert(0,str(i+1))

seq = ini[0]
end = ini[-1]

while flg == 0:
for idx,elem in enumerate(ini):
if seq[1] == seq[2]:
pend.append(seq)
flg = 1
break

元記事を表示

walkを使って特定のファイルサイズのリスト抽出

## walkの練習

フォルダ構成は下記のようになっています。
(コマンドプロンプトでtree フォルダ名 /f)

“`
LOGS
│ log.txt
│ log2.txt
│ 大きいファイル君1.htm
│ 新規 Text Document.txt

├─.ipynb_checkpoints
├─202112_15
│ │ log.txt
│ │ log2.txt
│ │ 大きいファイル君2.htm
│ │
│ └─.ipynb_checkpoints
│ 大きいファイル君2-checkpoint.htm

└─2021_1214
│ koko.txt
│ 大きいファイル君3.htm

├─.ipynb_checkpoints
└─その他
│ 大きいファイル君4.htm

└─.ipynb_checkpoints

“`

まずはどのように表示されるか見てみる。

“` python
import os

dir = ‘log

元記事を表示

subprocessを使ってコンソール引数付のpythonファイルを外部から実行する

### コンソール引数付のファイルを外部から実行する

“`subpro_qiita.py
import subprocess
from time import time

name_list = [“john”,”power”,”smith”,”jack”]

for i in name_list:
print(i)
# コンソール実行時の場合に空白で区切る部分を分割してリストに入れる”
# python greeting.py –nickname XXXX の場合下記のようになる。
command = [“python”,”greeting.py”,”–nickname”, f”{i}”]
proc = subprocess.Popen(command)
“`

実行するファイル

“`greeting.py
import argparse
import time

def arg_res():
parser = argparse.ArgumentParser()
parser.add_argument(‘–nic

元記事を表示

stripe API 使い方 (List all customers)

API の仕様はこちら
[List all customers](https://stripe.com/docs/api/customers/list)

Ubuntu 21.10 で確認しました。
#データの準備#

CLI のインストール

“`bash
wget https://github.com/stripe/stripe-cli/releases/download/v1.7.9/stripe_1.7.9_linux_amd64.deb
sudo dpkg -i stripe_1.7.9_linux_amd64.deb
“`

インストールの確認

“`text
$ stripe –version
stripe version 1.7.9
“`

カスタマーの作成

“`bash
stripe customers create
“`

Secret Key の取得
https://dashboard.stripe.com/test/dashboard
![stripe_aa.png](https://qiita-image-store.s3.ap-northea

元記事を表示

【Python】turtleを使って☆星マークを記述

Pythonとturtleと使って星マークを記述するコード。

## 実装コード1

“`python
from turtle import *

for i in range(10):
forward(100)
if i % 2 == 0: left(72)
else: right(144)
done()
“`

## 実行結果1
![スクリーンショット 2021-12-16 19.45.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/522445/1896ae5a-69b3-2494-3e48-a03364ccec11.png)

*クロスさせないタイプの星型の図形です。

## 実装コード2

“`python
from turtle import *

for i in range(5):
forward(100)
right(144)
done()
“`

## 実行結果2
![スクリーンショット 2021-12-16 19.50.44.png](https://qiit

元記事を表示

【Python3】テキストファイルに書き込む方法

# はじめに
[前の記事](https://qiita.com/Matcha_5428/items/b165ff31d4a84b9edb23 “前の記事”)で、[テキストファイルの内容を取得する方法](https://qiita.com/Matcha_5428/items/b165ff31d4a84b9edb23 “前の記事”)をまとめたんですけど、この記事では書き込む方法をまとめときましたので参考になれば幸いです。

## 動作環境
Python 3.10.0

Mac OS Monterey

# 準備
こんな感じのファイルを作ります。

test(フォルダー)

(フォルダー内に)
main.py
test_text.txt

今回は“`test_text.txt“`に文字列を書き込むプログラムを作っていきたいと思います。

# 本編
### ファイルの読み込み
これは[前の記事](https://qiita.com/Matcha_5428/items/b165ff31d4a84b9edb23 “前の記事”)と大きくは変わりません。
ですが、末尾も文字が書き込みの際は上書き保

元記事を表示

【Python3】テキストファイルの内容を取得する方法

#はじめに
今回はPythonからテキストファイルの内容を取得し、変数に代入する方法を紹介します。

##動作環境
Python 3.10.0

Mac OS Monterey

#準備

まず、このような感じのファイルを作ります。

test(フォルダー)
main.py
text.txt

今回は“`text.txt“`の内容を取得するプログラムを作っていきたいと思います。

#本編
###ファイルの読み込み

“`python
open = open(“text.txt”, “r”)
“`

“r”は読み込み(read)を表しています。

###変数に代入

“`python
data = file_open.read()
“`

###ファイルを閉じる

“`python
open.close()
“`

この三つを組み合わせることでテキストファイルの内容を取得することができます。
以下、サンプルコード。

“`file_read.py
# Coding : utf-8

# ファイルの読み込み
open = open(“test_text.txt

元記事を表示

備忘録:TKinterのEntry&Label生成と動作をクラス化してコード量を減らした編

#はじめに
HCB Advent Clendar 2021の14日目を担当するKimです。
今回は,TKinterでEntryとLabelの生成動作を関数化して,起動時の生成コード量を80%減らした時のことを書きます.
#作業環境
– Python 3.7.12
– Tkinter 3.6

##生成画面
![GUI_立位動作.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/647604/ee733a69-7d93-6e69-28f2-3665982fdf3a.png)

##生成するUI一覧
– Label 7個
– Entry 8個

#Before
##生成コード
“`python
def tab3_main(self,tab3):
gestureLabel = tk.Label(tab3, text=”脚部動作”)
gestureLabel.grid(row=0, column=0)

inputKeyLabel_L = tk.Label(tab3

元記事を表示

箱とボール Python3編

https://paiza.jp/works/mondai/stack_queue/stack_queue__practice_step6

“`py
tower = [] #解答用のリスト
que = [] #初期のリスト
a = 0 #towerからpop()した変数
b = 0 #queからpop(0)した変数

N = int(input())
que = list(map(int,input().split()))

b = que.pop(0)
tower.append(b)

while que != []:
b = que.pop(0)
a = tower.pop()

while a == b:
b += a
a = 0

if tower != []:
a = tower.pop()

else:

flg = 1
b

元記事を表示

楽天カードを使いすぎるとお猿さんが大暴れする装置 ~PART①:明細スクレイピング~

# はじめに

皆さんこんにちは。ABEJAアドベントカレンダー2021の6日目の記事です。1日目には[こんな記事](https://qiita.com/xecus/items/c96bec764e20946059a0)を書いていました。今回はまた別の話です。

最近(ここ半年ぐらいで)、結婚・引っ越し・車購入と家購入と….とライフステージの変化が発生し、人生最高レベルの出費が重なりました。ようやく落ち着いてきたものの…最近出費が増えることに慣れてしまったのか、最近お財布の紐(気持ち)が緩みがちです。例えば外食がかなり多くなってしまい、エンゲル係数がわりと高めになったり。

![couple_kakei.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/128123/bb55e5d3-dea7-d381-2313-3d706eaef1a5.png)

家庭内CFO(家庭内最高財務責任者)の自分ですが、使用状況を正しく認識する&自分自身を律するモノ・仕組みがないと、ダメだなーっていう課題感が今回のスタ

元記事を表示

Google Colab と Turtle で描くアルファベット一覧(小文字編)

# 0. はじめに

– [MYJLab Advent Calendar 2021](https://qiita.com/advent-calendar/2021/myjlab) 16日目の記事です.
– 昨日は@Tyanri_氏の『[PyCaret使ってみる](https://qiita.com/Tyanri_/items/9559e18faa3cd19d7788)』でした.数行のコードでデータの前処理から様々な機械学習手法の精度比較までしてくれるライブラリのPyCaretを紹介してくれました.
– [Google Colab と Turtle で描くアルファベット一覧(大文字編)](https://qiita.com/chiba___/items/fae8271cad6b9d2604fd)の続きです.
– Google Colaboratory と Turtle(タートルグラフィックス)でのアルファベットの描き方をまとめました.
– Turtleに命令を出して動かすことで簡単に文字を描くことができます.

# 1. Turtle で描くアルファベット小文字

元記事を表示

OTHERカテゴリの最新記事