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

Python3関連のことを調べてみた2023年01月10日
目次

life gameの画面エディタを作ってみた python3

(https://qiita.com/sage-git/items/c6c175887faa4cf737fb) ↑ここにあるライフゲーム用の画面エディタを作ってみました。 画面上をマウスでクリックすると、セルがオンオフします。 キー操作: w save.txtに画面をセーブ l save.txtからデータをロード q quit なお、元記事のデータロードはモジュールがないというエラーになるので、元記事のプログラムに、 `import os`を付け足す必要があります。 “`lgeditor.py #!/usr/bin/python3 from pygame.locals import * import pygame import sys import numpy as np import os scale=5 height=100 width=100 pygame.init() # Pygameを初期化 screen = pygame.display.set_mode((scale*width,scale*height)) # 画面を作成 pygame.display
元記事を表示

エラトステネスのふるいによる素数生成 Python3

エラトステネスの篩による素数生成をします。 ファイルに、`chmod +x prime5.py`として実行権を付けて動かして下さい。 `$ prime5.py `で、nまでの素数を生成します “`prime5.py #!/usr/bin/python3 import sys def primes(n): p = [i for i in range(n + 1)] # 0からnまでのテーブルを作る for i in range(2, int(n**0.5)+1): # 2から√nまでの中で、 if p[i] != 0: # 最初の数が見つかったら for j in range(2, int(n/i)+1): #倍数を次々と消してゆく p[i*j]=0 return(sorted(set(p))[2:]) #リストを整形する argvs=sys.argv n =int(argvs[1]) pl=primes(n) print(pl) print(len(pl)) “`
元記事を表示

Pythonでの音声信号処理 (5) ノコギリ波の作成

ダミーデータを使って、ノコギリ波を作ってみる(特に深い意味は無し)。 “`p5.py # -*- coding: utf-8 -*- import sys sys.dont_write_bytecode = True import math import numpy as np from Grp import Line def main(): smpl = 1024 # サンプリングレートは1024 sec = 2 # 2秒分 # ノコギリ波 = Σ {(1/n) (sin nx)} wav = makeWave(1, smpl, sec, 0, 0, 1) for i in range(64): freq = i + 1 wav += makeWave(i + 1, smpl, sec, 1 / freq, 0, 1) grp = Line() grp.setScale(256 / smpl) grp.setData(wav) grp.displ
元記事を表示

Pythonでの音声信号処理 (4) ダミーデータの作成

今後も踏まえて、ダミーデータ作成用の処理を用意しておく。 “` def makeWave(freq, smpl_freq, smpl_sec, r, a, b): “”” サンプルデータ生成 Parameters ———- freq : int 周波数(Hz) smpl_freq : int サンプリング周波数(Hz) smpl_sec : int サンプリング秒数(sec) r : float 振幅 a : float 位相用定数(cos) b : float 位相用定数(sin) Returns ——- res : numpy.ndarray サンプルデータ “”” res = [] for t in range(smpl_freq * smpl_sec + 1): theta = 2.0 *
元記事を表示

【Python】set型のremoveとdiscardの違いと覚え方

 競技プログラミングをやっていて、ふと「どちらも削除するものだけど、この2つの違いってなんだ?」と思い調べてみました。結論としては、**取り除くものがそもそも存在しないときエラーを返すかどうか**です。 ## removeとdiscardの共通事項 – 集合から要素を削除するメソッド。 – 複数指定はできない。 – 要素を指定しない場合、エラーが出る。 ## removeとdiscardの違い “`python S = {one, two, three} S.remove() #エラー:remove() takes exactly one argument (0 given) S.discard() #エラー:discard() takes exactly one argument (0 given) S.remove(‘four’) #KeyError: ‘four’ S.discard(‘four’) #エラーは出ない “`  先述の通り、要素を指定しなければどちらもエラーを出しますが、要素を指定して、それが含まれていない場合、`remove`はエラーを吐き出し、`d
元記事を表示

Pythonでガンマ関数とゼータ関数をプロットするためのメモ書き(複素数対応版)

複素数対応版を探すのに苦労したのでメモ。 # 複素数の使い方 虚数単位として`j`を付けるだけ。`.real`と`.imag`で実部、虚部を取り出せる。 “`python 1+2j “` https://qiita.com/shuhei/items/f5cf6c83fcfb5dd24c2d # ガンマ関数 scipy.specialの[`gamma`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.special.gamma.html#scipy.special.gamma)を使う。ガンマ関数の逆数[`rgamma`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.special.rgamma.html#scipy.special.rgamma)も用意されている。 [array_like型](https://numpy.org/devdocs/glossary.html#term-array_like)を引数に取れる。 htt
元記事を表示

geometry_msgs/PoseWithCovarianceStamped をrosbag_to_csvした時、covarianceの行が括弧でくくられてしまっている件

## 経緯 rosbagのなかのgeometry_msgs/PoseWithCovarianceStamped型のトピックをrosbag_to_csvでcsv化すると、covarianceのすべての成分が()でくくられて扱いづらい。![Screenshot from 2023-01-08 19-34-12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1294864/96e0c098-7d2a-ed15-5b9a-d99b4d8933f5.png) 応急処置的ではあるが、pythonでcovarianceの成分を一つづつ列に保存するようにする。 ## 環境 – Ubuntu18.04 – ROS1 – python2.7 ## スクリプト “`php:covariance_to_csv.py import rosbag import sys import os import pandas as pd # get path argv = sys.argv filename=os.path.norm
元記事を表示

Pythonでの音声信号処理 (1) ファイルの読み込み

音声ファイル(ここではmp3)を読み込んでみる。 “`p1_1.py from pydub import AudioSegment sd = AudioSegment.from_mp3(“data.mp3”) print(sd.duration_seconds) print(sd.frame_rate) print(sd.channels) “` 音声信号部分を取り出してみる。 “`p1_2.py from pydub import AudioSegment import numpy as np sd = AudioSegment.from_mp3(“data.mp3″) sr = np.array(sd.get_array_of_samples()) ch1 = sr[::2] ch2 = sr[1::2] for i in map(hex, ch1): print(i, end=”, “) “`
元記事を表示

【portfolio】 化粧品販売システム

本記事について

ポートフォリオを閲覧頂く方が理解しやすいよう

motoyaが作成した【化粧品販売システム】について関連する情報を整理した内容となっております。

解説リンク集

本システムのソースコード

Github

OTHERカテゴリの最新記事