Python3関連のことを調べてみた

Python3関連のことを調べてみた
目次

炭酸イオンを含むかどうかの判定アルゴリズムを複数のPOSCARファイルに適用(ログ)

## 目標
炭酸イオンかどうかの判定アルゴリズム[1]を,複数のPOSCARファイルに適用するスクリプトを作成する.

[1] 炭酸イオンかどうかの判定アルゴリズムの作成(ログ) #Python3 – Qiita
https://qiita.com/k-morii-toridai/items/972a713e62c1739932ba

## スクリプトの実行
“`terminal
pwd
/mnt/ssd_elecom_c2c_960gb/scripts/get_some_ion_contained_pos_folder_p_list

ls -CF
CO3_contained_poscar_folder_path_list.npy* get_CO3_contained_pos_folder_p_list.py*
get_CO3_contained_pos_folder_p_list.ipynb* package_bond_search_algorithm/
“`

“`terminal
time python3 get_CO3_contained_p

元記事を表示

変数の入れ替え (paizaランク D 相当)

https://paiza.jp/works/mondai/array_utilization_primer/array_utilization_primer__excange

以前、コメントで教えてもらった方法でやってみる。

“`py
X,Y=map(int,input().split())
X,Y = Y,X
print(X,Y)
“`

一発OKでした
これすっごく便利ですね。

次に行ってみる

https://paiza.jp/works/mondai/array_utilization_primer/array_utilization_primer__swap

これもさっきので解けます
“`py
N = int(input())
A = [int(input()) for _ in range(N)]
X,Y = map(int, input().split())
A[X-1],A[Y-1] = A[Y-1],A[X-1]
print(*A,sep=”\n”)
“`

元記事を表示

配列の順序の反転 Python3編

https://paiza.jp/works/mondai/array_utilization_primer/array_utilization_primer__reverse

私の答えは
“`py
N = int(input())
A = [int(input()) for _ in range(N)]
print(*reversed(A),sep=”\n”)
“`

まあ、これは前にもやったことなので難しくはない。
仮に、reversed関数がなかったとすると、どうするか。
まずはA配列を作るところまでは同じで
逆順のB配列を作るにはどうするか。
とりあえず前勉強した通り空の配列を作る

“`py
B = [None] * N #0でも同じ結果が出る
“`

たとえば、5つの要素があるとして
B[0]=A[4]
B[1]=A[3]
B[2]=A[2]
.
.
.
という順番になる。
これをルール化すればいいわけで、
i = 0なら、NからN(=ここでは5)-0(=i)-1
とすればいいのではと考えて、

“`py
N = int(input())
A = [int(i

元記事を表示

Python初心者が「2人でじゃんけんする」を書いた④

Python初心者が「2人でじゃんけんする」を書いた①
https://qiita.com/hiroshi_abu/items/254b04315ea68cbfa92f
からの変更点
・プレイヤーの入力が範囲外なら、再入力を促す。
・あいこなら、勝敗判定可になるまで、じゃんけんする。
・プレイヤーの手、PCの手の取得を関数にした。

“`python
import random

te = {0: ‘グー’, 1: ‘チョキ’, 2: ‘パー’}
te_KYE = tuple(te.keys())

print(‘*****じゃんけんぽん*****\n’)

while True:

def Y_te(): #プレイヤー
”’プレイヤーの手を入力する。範囲外はループする”’
while True:
try:
x = te_KYE[int(input(‘あなたの手は?\n 0:グー 1:チョキ 2:パー –>> ‘))]

元記事を表示

はじめてのデータ分析 データ前処理から回帰直線

この記事はNTTテクノクロス Advent Calendar 2023 シリーズ1の19日目です。

NTTテクノクロスの大澤と申します。
普段はPythonを用いてデータ分析業務を担当しており、今回はデータ分析初学者向けに、Pythonを使ってデータ前処理から回帰直線で数値を予測するところまでを記事にしました。

## はじめに
データ分析でよく使われるファイル形式としてノートブック形式というファイル形式があります。
普段開発をされている方で、特にVSCodeを使用されている方は下記を参考にjupyter notebookの環境を構築してください。

[VSCodeでJupyter Notebookを使ってみた【ゼロからPython勉強してみる】
](https://qiita.com/starfieldKt/items/ed7dee5142d9d5c177fd)

特に使用しているエディタもなく、コーディング経験があまりない方についてはGoggleが提供している「Colaboratory」というサービスがあります。
Googleのアカウントさえあれば、環境構築は不要ですぐ使用できる

元記事を表示

重たいログファイルを部分的に読み込むツールを作ってみた

# はじめに
タイトルの通り重たいログファイルを読み込むためのツールを作ってみたのでその紹介です。

### 経緯
* ログローテーションを甘く見たままの開発着手により、とても重たいログファイルを量産
* ログファイルをVScodeの別タブで開いたままソース修正、テスト起動を繰り返し、フリーズもしばしば
* 筆者がcliでのログ解析に苦手意識があり、できればGUIベースで解析したい

そんな悩みを解消したいと思い、ログファイル内の1部分だけ読み込んで表示させるツールを作成しました。

# 実際の画面
今回はtkinterを使って作成しました

画面はこんな感じになりました。
![2023-12-09_23h33_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1700794/5ccf2030-8152-1f5e-5edc-ad56f9aba141.png)

# 使い方
1.「対象ファイルの選択」ボタンで読み込みたいファイルを選択
2.「表示させる行数(数字を入力):」のテキストボックスに表示させ

元記事を表示

Python3 + PyAV 動画ファイルから映像と音声を読み込み、画像だけ処理を行い、音声はそのまま出力ファイルに書き出す

公式ドキュメントなどを読んでも同じようなサンプルコードがなかったのでトライアンドエラーを行い、実現できましたので共有致します。ご参考になれば幸いです。

○実現したかった仕様
動画ファイルを読み込んで、画像だけ処理を行い、音声はそのまま出力する。

OpenCVでは動画から画像は抽出できるが、音声はできなかった。(公式ドキュメントにはできそうな記載があるが、うまく実現できなかった。)
PyAVでは実現できました。

実現できたファイル形式: MPEG4
Python: 3.11.2
PyAV: 0.9.4-7
LinuxMint Debian Edition: 6 “Faye”

“`Python:movie-V+A.py
import av
import mymovie1 as mm
import threading

def process(image):
global img
import cv2
#Do some thing here
return

in_file =
out_file

元記事を表示

【Python】jsonモジュールでエンコード・デコードするときの注意点2つ

# 概要
Pythonの`json.dumps()`と`json.loads()`について、注意点を2点整理してみました。
以下のコードをサンプルとして進めます。

“`py
import json

#1
data = {}
data[‘sample_id’] = ‘test’
sample_id = json.dumps(data[‘sample_id’])
print(data)
print(sample_id)

#2
data = {}
data[‘sample_id’] = ‘test’
sample_id = data[‘sample_id’]
print(data)
print(sample_id)
“`

こちらを実行すると結果は以下の通り。

“`
{‘sample_id’: ‘test’}
“test”
{‘sample_id’: ‘test’}
test
“`

あれ、`#1`では`”test”`というようにダブルクオーテーションで囲まれているのに対して、`#2`では`test`というようにダブルクオーテーションがありません。

テストコードを書いている

元記事を表示

Python + Matplotlibを使用して単位円を描画する

## 開発環境
– Python 3.12.1
– Visual Studio Code (Version: 1.85.1)
– matplotlib 3.8.2
– numpy 1.26.2

## コード
“`python
import matplotlib.pyplot as plt
import numpy as np

CIRCLE_LINE_COLOR = ‘#0000FF’ # 円周の線の色
X_AXIS_LINE_COLOR = ‘#000000’ # X軸の線の色
Y_AXIS_LINE_COLOR = ‘#000000’ # Y軸の線の色
GRID_COLOR = ‘#AAAAAA’ # グリッドの色

CIRCLE_LINE_WIDTH = 2 # 円周の線の太さ
X_AXIS_LINE_WIDTH = 0.8 # X軸の線の太さ
Y_AXIS_LINE_WIDTH = 0.8 # Y軸の線の太さ
GRID_LINE_WIDTH = 0.5 # グリッドの線の太さ

FIGURE_SIZE = (6,

元記事を表示

pythonでCPU100%

### シングルプロセス
“`
import multiprocessing
import threading
import sys

def max_cpu_task():
“”” CPUを最大限に活用するための単純な無限ループ “””
while True:
pass

def single_process():
“”” シングルプロセスでCPUを最大限に活用 “””
max_cpu_task()

def multi_process():
“”” マルチプロセスでCPUを最大限に活用 “””
processes = []
for _ in range(multiprocessing.cpu_count()):
p = multiprocessing.Process(target=max_cpu_task)
p.start()
processes.append(p)

for p in processes:
p.join()

def m

元記事を表示

AtCoder Heuristic Contest(AHC)はどんな問題なのだろうと思って初めて解いてみた記録[Python]

[Supership](https://supership.jp/)の名畑です。「[映画「鬼太郎誕生 ゲゲゲの謎」興収が11.5億円を突破!大ヒット御礼で本編冒頭映像が公開](https://animeanime.jp/article/2023/12/12/81781.html)」とのこと。めちゃくちゃ人気のようで本当に嬉しいです。

## はじめに

これまで私の記事で何度も取り上げてきた競技プログラミングのサイト[AtCoder](https://atcoder.jp/)には大きく分けて2種類のコンテストがあります。そのうちの一つがABC、ARC、AGCなどのアルゴリズムコンテストであり、もう一つが**AtCoder Heuristic Contest**(**AHC**)です。

> ABC/ARC/AGCなどのアルゴリズムコンテストと異なり、最適解を出すのが難しい問題に対し、出来るだけ良い解を作成するコンテストとなります。
>
> [AtCoder Heuristic Contest 001](https://atcoder.jp/contests/ahc001)より

今ま

元記事を表示

趣味で書いていっているPythonフロントエンドライブラリの1年の活動をまとめて振り返ってみる(2023年版)

のんびりとした進捗ですが今年も趣味で書いていっている自作のライブラリで対応したことなどの1年の振り返りをしておきます(GitHubのissueで今年1年でClosedになったもをissue番号を絡めて振り返っていこうと思います)。

※去年の振り返り記事 :

https://qiita.com/simonritchie/items/8d135e9350c68174870b

# ライブラリの概要と記事の事前情報

– [apysc](https://github.com/simon-ritchie/apysc)というPythonの簡易のフロントエンド用のライブラリです(ライトで機能の少ないAltJS風味なライブラリと考えていただければと)。
– Pythonで書いてHTMLとjsで出力したり、Jupyter (notebook / Lab)やColaboratory上で表示したり・・・といった制御を行うことができます(VS Code上のJupyterは現在未サポート)。
– 今まではSVG要素がメインでしたが段々とその他の要素も追加していっています。
– 型をしっかりと定義していって

元記事を表示

Pythonの仮想環境どれ使うべきか[初心者]

### 1. はじめに
Pythonの仮想環境管理するために複数の選択ありますよね。conda, Virtualenv, venv, pipenv, poetry…
なぜ使うかと言うと、

– 依存関係の衝突回避:異なるプロジェクト間でのライブラリの衝突を防ぐ
– クリーンな開発環境の確保:必要なパッケージのみをインストールし、環境を整理する
– プロジェクトの再現性向上:他の開発者が同じ環境を簡単にセットアップできる
– デプロイメントの簡素化:開発環境と本番環境の違いを最小限に抑える
– 開発者がプロジェクトの依存関係をより簡単に管理し、コードの品質とプロジェクトの安定性を向上させる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/260345/d93cafc8-e94a-9cc2-9405-2cd3ca551a7e.png)

:::note
よくわからない方へ:小難しいことを書きましたが、ローカル環境にいろんなアプリ・プロジェクト作るとライブラリのバージョンとか、よくわからない

元記事を表示

Python Online Compiler for Beginners with Interactive Lessons

Introduction

Welcome to the world of Python coding! In this article, we’ll explore the exciting realm of Python Online Compiler for Beginners with Interactive Lessons. Whether you’re a novice or someone looking to refine your Python skills, this comprehensive guide is your one-stop destination.

![Python Online Compiler for Beginners with Interactive Lessons.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3655293/734f082a-7e3d-7aea-8c94-118190a0bf70.png)

Understanding Python

元記事を表示

EIPの料金改定に向けてお知らせbotを作る

# はじめに
本記事は[アイレット株式会社 新卒 Advent Calendar 2023](https://qiita.com/advent-calendar/2023/iret) の17日目の記事です!

2024年2月1日より、AWSにおけるパブリックIPv4アドレスの料金が改定されることをご存じでしょうか。

https://aws.amazon.com/jp/blogs/aws/new-aws-public-ipv4-address-charge-public-ip-insights/

上記ブログ内の表によると
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/269896/8b524c2c-7b73-6500-c598-e2d80c0339fe.png)

今まではリソースに対してパブリックIPv4アドレスが割り当てられていれば料金はかかりませんでしたが、2月1日以降は未割当アドレスと同じ料金がかかるように改定されます。

つまり1つのIPアドレスを利用しているだけで
0.00

元記事を表示

【Pythonエンジニア認定基礎試験】と【Pythonエンジニア認定実践試験】合格体験記

2023年7月15日にPythonエンジニア認定基礎試験
2023年12月15日にPythonエンジニア認定実践試験
にどちらも1週間ほどの学習で合格したので当時の学習方法を解説します。

# 結論

基礎試験→ExamApp
実践試験→Youtube,ExamApp,ディープロ模擬試験

で合格可能です。

https://python-basic.com/

https://diver.diveintocode.jp/dive_into_exam/36

# 筆者について

未経験からIT業界に就職し4年目となります。
自分がSEなのかPGなのかわからない一人チームで毎日心をすり減らして働いています。

転職した際に初めて使用したのがPythonであり
当時からなぜかチームに配属されず現場にはいっていきなり一人であることを告げられ、
SESは闇が深いなぁと感慨深い気持ちと焦燥感に追われる中
グーグル先生に頭を下げながら毎日Pythonを学習していました。

現在はPL/SQL

元記事を表示

Python htmlの&_amp;(_を抜いて) の使用例

& シーケンスはよく目にすることがあると、思います。&_amp;は自分自身を&に変えます。&_lt;,&_gt;(<,>)これですよね。これは<>とは区別できます。<>の中に&_lt;と&_gt;は別の物と認識されます。<>この中に書き込めます<>それで、<>はスプリットに使えます。
また、<br>これは知っていますよね。改行記号です。\\n(h0d0a)です。普通に書くと、ファイル内もテキストも改行しますが、<br>にすると、起こりません、ニューラインが。実はとても、便利なんですよ。
あまり使わない&_quot; " これ、非常に面倒なんです。文の中に1個だけ使おうとする時、でも、2個だと、閉じてしまうか、エラーになるんです。接続子がないからです。
とまぁ、便利なのは、分っていただいた所で、これって、勝手に「テンポラリシーケンス」として、作られる、て知っていましたか?
念のため\\nを<br>に変えて、\\nを今後に使えるように、変数を置換します。その後、ファイルに変えるシーケンス(&wl_0;)を中に使ってい

元記事を表示

なでしこ3はPythonより6.5倍速い!ベンチマークしてみました

なでしこの実行速度が話題になっていたので、久々に、手元にあるMacbook Pro(m1)でベンチマークしてみました。なでしこ3のPC版(Node.js版)と各種スクリプト言語を比較してみましょう。

# 再帰処理フィボナッチ勝負

まずはフィボナッチで試してみましょう。

## なでしこ3

なでしこ3.4.24で試してみました。

“`nadesiko:fib.nako3
●FIB(Nの)
  もし、N<2ならばNで戻る。   ((N-1)のFIB)+((N-2)のFIB)で戻る。 ここまで。 (40のFIB)を表示。 ``` 実行してみると、下記のように4秒かかりました。 ``` time cnako3 fib.nako3 102334155 cnako3 fib.nako3 3.94s user 0.05s system 98% cpu 4.078 total ``` ## Python3 次に、Python 3.9.7で試してみます。速度には影響しないものの、タイプヒントも付けてみました。 ```python:fib.py def fib(n:int) -> in

元記事を表示

フィボナッチ数 (paizaランク D 相当)

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

フィボナッチ数列をプログラムで表現する問題。
1番目は0,2番めは1,3番目以降は1番目と2番めの数の和・・・というやつ
そのままプログラミングした

“`py
N = int(input())
ans = 0
num1 = 0
num2 = 0
for i in range(N):
if i + 1 == 1:
ans = 0
num1 = 0
print(ans)
if i + 1 == 2:
ans = 1
num2= 1
print(ans)
if i + 1 > 2:
ans = num1 + num2
print(ans)
num1 = num2
num2 = ans

“`
下手くそなプログラミングだなぁ。。。
答えを見てみた。
配列をうまく使っていた。
なので書

元記事を表示

CuPyの “cannot open source file”

# CuPyのエラー

Windows11
CuDa: 11.7

仮想環境を作り
“`bash
py -m veve venv
“`

“`bash
pip install cupy-cuda11x
“`

“`python
import cupy

A = cupy.arange(9).reshape(3, 3).astype(‘f’)
“`

エラー発生
> CompileException: … : catastrophic error: cannot open source file ” cupy/complex.cuh”

# 解決法
venvのフォルダ名に全角、スペースをいれない(どちらが要因かは未調査)

元記事を表示

OTHERカテゴリの最新記事