- 1. コードテストで力を付ける③
- 2. toio(nodejs)のwebsocketと、python/websocketがつながらない。
- 3. コードテストで力を付ける②
- 4. 【Python】『涼宮ハルヒの消失』の改変された世界から戻るための世界から戻るための緊急脱出プログラムを再現してみた
- 5. 気象庁のAtomフィールド(XML電文)をラズパイで取得してツイートさせた話
- 6. Kerasのモデルを5分で料理する
- 7. 天鳳個室の自動成績管理アプリをLINE botとPythonで作る その①
- 8. VisualStudioCodeでPython開発環境構築 (0からflake8による静的解析及びコード整形まで)
- 9. WEBカメラ取り込み
- 10. 「いちばんやさしいPython入門教室」かってに修正
- 11. matplotlibの凡例(legend)レイアウト関連メモ
- 12. コードテストで力を付ける①
- 13. GANで思い出の白黒写真をカラーにしたい
- 14. Twitter API による連続取得 (の Tips)
- 15. GET endpoints
- 16. 【Python】tkinterで作業時間に応じて給料を計算してくれるアプリを作ってみた
- 17. マイページからいいね(LGTM)順が消えたので Qiita API 使って取得する
- 18. plt.close() だけではメモリが解放されない。plt.clf() → plt.close() とするべき。
- 19. 【Python】Udemy 画像判定AIアプリ開発 Part1
- 20. ゼロから始めるLeetCode Day43「5. Longest Palindromic Substring」
- 21. RubyとPython間のプロセス間通信を行う(POSIX メッセージキュー)
コードテストで力を付ける③
# C024
結果:100点
時間:16:09最初に試行回数が示されるタイプ
toio(nodejs)のwebsocketと、python/websocketがつながらない。
# 課題
toio(nodejs)のwebsocketと、python/websocket,socketが接続できない。
toioとUnity/websocketは接続できる。[検証コード](https://1drv.ms/u/s!ApO4wsxFJBbVuBCeGojtl1ekqOM_?e=95tkVb)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/555658/160c8c8b-71ed-548d-7d3a-50b094b671f8.png)
x項目も、同言語ではserver-client接続できている。
検索するとjavascriptはHTML絡みの記事が多いので良くわからない。
コードテストで力を付ける②
# 2日目
チャレンジした問題:C077
結果:スコア81点
原因:問題文を読み違えていた。
対策:ホワイトボードを用意してしっかりと問題を見直そう# 今後のために
今回のタイプは同じ形式がinput()で獲得できるのではなく、最初1回取得した値の中に
何回同じ処理を行うのか、計算式に使う値などが入っていたので標準入力の獲得の仕方が一回の処理では
できなかった。条件
入力値
入力値
のようになっていて問題に混乱してしまった。(焦りすぎ)
【Python】『涼宮ハルヒの消失』の改変された世界から戻るための世界から戻るための緊急脱出プログラムを再現してみた
しょーもないものを作ってしまったので供養します。#作ったもの
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/500402/f04a2bdd-5b09-5c97-639d-8e36ce08afd5.png)
映画『涼宮ハルヒの消失』に出てくる緊急脱出プログラムを再現してみました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/500402/e92ac5b6-f7ec-9966-c010-a505447c6b90.png)
作中と同様、1文字ずつ順番に文字が出力されます。
コードの最後は「input()」で終わっているので、エンターキーを押すとプロンプトが消えるようになっています。
作中ではキョンがエンターキーを押した瞬間に改変された世界から戻り、部室にいたはずの面々がいなくなり、PCの画面に写っていたはずのプロンプトが消えていました。さすがに周囲の人間を消すプロ
気象庁のAtomフィールド(XML電文)をラズパイで取得してツイートさせた話
##何をしたいか
[特務機関NE〇VみたいなTwitterアカウント](https://twitter.com/TYO_Temperature)を完全自己満足で作りたかった
とりあえず地図の自動作成とかは置いておいて気象注意報・警報・地震情報を取得、ツイートさせたい。
##どこから情報を取得するか
「気象庁防災情報XMLフォーマット形式電文」とやらが気象庁HPで公開されていたのでありがたく使わせてもらうことに。
取得できるAtomフィードは
・定時:気象に関する情報のうち、天気概況など定時に発表されるもの
・随時:気象に関する情報のうち、警報・注意報など随時発表されるもの
・地震火山:地震、火山に関する情報
・その他:上記3種類のいずれにも属さないもの
のいずれかを選べるので各自好きなのを選んで以下コードの変数「Atom_URL」を置き換えてください。
なお、この記事は「随時:気象に関する情報のうち、警報・注意報など随時発表されるもの」で進めています。
ファイルを複製して変数「Atom_URL」が異なるファイルを作れば複数の情報を取得することも可能です。
##最終的に何ができるか
こう
Kerasのモデルを5分で料理する
# はじめに
この記事では、Kerasの大まかな使い方を一通り把握することを目標としています。# 目次
• Kerasとは
• ライブラリのインポート
• モデルの作成
・Sequential
・Flatten
・Dense
・Dropout
• モデルの訓練課程の設定
・compile
• モデルの訓練
・fit
• モデルの評価
・evaluate# Kerasとは
Kerasは、迅速な実験を可能にすることに重点を置いて開発されたもので、[TensorFlow](https://github.com/tensorflow/tensorflow)または[CNTK](https://github.com/Microsoft/cntk)、[Theano](https://github.com/Theano/Theano)上で実行可能な高水準のニューラルネットワークライブラリです。天鳳個室の自動成績管理アプリをLINE botとPythonで作る その①# 背景
* COVID-19の感染拡大により雀荘が封鎖され行き場を失った私達は天鳳の個室を使ってセット麻雀をするようになった.
* はじめは成績管理のためにログを手動でコピペしてGoogle Docsに保存していたが,毎日麻雀を打っているとだんだん面倒になってきた.
* そこでログの自動ダウンロード(scrape)から集計,(ついでにグラフ表示まで)を自動で行うアプリをPythonで作成することにした.
* さらに参加者全員がいつでも情報を見ることができるように,このツールをLINE botにした.# Over View
![test.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160678/15131380-c118-3585-6af3-0acc1b43b52f.png)# 完成イメージ
![ui.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/160678/86b61b14-f645-6a9f-9c98-8VisualStudioCodeでPython開発環境構築 (0からflake8による静的解析及びコード整形まで)
# はじめに
Python環境構築を新しく開発を始める人に教える必要があったので、折角なので参考までに投稿します。
VisualStudioCode(以下VSCode)でのPython環境構築から静的解析及びコード整形までをまとめて記載します。
これがほかの人にも役立つといいなぁ。※本環境構築では静的解析ツールに**flake8**を、コードの整形には**autopep8**を使用します。
# 対象OS
Windows10 64bit
# Python環境構築
## Pythonのインストール
### インストーラダウンロード
[Python](https://www.python.org/)のホームページから最新のPythonインストーラをダウンロードする。
![tempsnip.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/131606/0a0707dc-2c77-8a40-f07f-f2d5552dc29b.png)
### インストール及びPathの設定
VSCodeやコマ
WEBカメラ取り込み
忘れない為のメモ書き程度となります。
WEBカメラを使用した画像取得及び保存に関するプログラム。
初学者が何とか辿り着いた答えの1つなので
見る人が見れば拙いのがご了承下さい。出来ればアドバイスを頂けるとありがたいです。
環境
Windows10(64bit)
anacondanavigator
python3(3.7.7)
opencv(3.4.2)## 使用ライブラリ
“`python:cap_save.ipynb
import cv2
import sys
import os
from datetime import datetime
“`
ディレクトリ作成及びファイル名に日付を使いたいので
`os`と`datetime`を使用しています。## 保存先とファイル名の定義
“`python:cap_save.ipynb
#保存ディレクトリの指定及びデータ名の定義
dir_path = ‘保存先’
basename = ‘ファイル名’
“`## 使用デバイスの定義
“`python:cap_save.ipynb
cap = cv2.VideoCaptur「いちばんやさしいPython入門教室」かってに修正
# テキスト修正
「いちばんやさしいPython入門教室」(大澤文孝著,ソーテック社出版, 2017)で演習をすすめてきました.このテキストはひとつひとつのcodeがどのような考え方でそこにあるのかを丁寧に解説してくれています.なので,coding初心者がcodingを理解するために,じっくり読むのにはとてもいいテキストです.ただ,論理の流れを重視しているためか,すこしcodingの常識からずれているところがあります.その修正です.## example07-08-01.pyの修正(tag版)
このあたりのコード,まずいです.
長くやったり,たくさんやったりしたらもたもたしてきます.はじめは,cpuとかのせいかとおもってあきらめてたんですが,あまりに遅くって...
修正のアイデアはどっかにあったんですが,もうだいぶむかしに修正しちゃったのでなにが原典だったかわかりません.
– [タグとバインド](http://bacspot.dip.jp/virtual_link/www/si.musashi-tech.ac.jp/new_www/Python_IntroTkinter/03/matplotlibの凡例(legend)レイアウト関連メモ
# 凡例の表示、曲線の選択
`ax.legend()`にオプションを何も含めない場合。
“`py:
import matplotlib.pyplot as plt
import numpy as npx = np.linspace(-3, 3, 101)
y1 = np.sin(x * np.pi)
y2 = np.cos(x * 2 * np.pi) * 0.5fig = plt.figure()
ax = fig.add_subplot(111)# labelオプションで凡例に用いる曲線名を指定
ax.plot(x, y1, c=”r”, label=”$\mathrm{sin}(x)$”)
ax.plot(x, y2, c=”b”, label=”$0.5 \mathrm{cos}(2x)$”)
ax.grid(axis=’both’)# 凡例の表示
ax.legend()
“`![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/187118/9195589f
コードテストで力を付ける①
# Paizaのコードテストをやっていく
# きっかけ
就活でコードテストが出てきて、普段のコードを各環境と違うときにテンぱるので。
標準入力の受け取り方が分からなく、アルゴリズムは余裕で作れたのに入力をどう処理したらいいかすっぽぬけて
時間切れになったための残そうと思って毎日やってAくらいには行きたい のでまずはCを全部クリアする。
##大事なところ
`import sys
line = sys.stdin.readlines()`#今回のハマリどころ
標準出力GANで思い出の白黒写真をカラーにしたい
# 動機
機械学習関連ではありがちなテーマですが、白黒写真をカラー化してみたいと思います。GitHubにコードもあげて置きました。[[GitHub]](https://github.com/spider-man-tm/pix2pix_gray_to_color)先日、自分の父の遺品を改めて見返していた際に、ふと昔の白黒写真が出てきて。亡くなった当時のまま放置していたのですが、今ならこれもカラー化できると思ったのがキッカケです。技術ブログというより、個人の趣味ブログ的な感じです。尚、GANの勉強をする際に参考にさせて頂いてる方のブログ、本があります。その方の記事は非常に勉強になることばかりで、今回の記事も内容被る部分がございます。下記にリンク貼っておきますので、是非ご覧ください。
[参考URL]
[Shikoan’s ML Blog](https://blog.shikoan.com/)
[モザイク除去から学ぶ 最先端のディープラーニング](https://koshian2.booth.pm/items/1835219)# ブログの構成
– [pix2pixの概要](#piTwitter API による連続取得 (の Tips)
Twitter API でツイートを取得する際、ご存知の通り、一定時間での取得回数や、一回の取得ツイート数が制限されています。
この制限とうまく付き合っていくために、連続取得する方法の Tips を記載しておきます。
なお、この投稿では、POST については扱いません。(ほぼ同じですが)数値等は必ず一次情報をご確認ください。
サンプルコードは [Gist にて公開](https://gist.github.com/s-yamano/12e0d338cdcdb006a602cdba7b215f8e)しています。(Twitter パッケージがあるそうですが、使ってません)# Twitter API の Rate Limits (一定時間内の取得回数制限)
制限は、下のようになっています。
GET endpoints
The standard API rate limits described in this table refer to GET (read) endpoints. Note that endpoints not
【Python】tkinterで作業時間に応じて給料を計算してくれるアプリを作ってみた
#経緯
python初心者です。「pythonではタイマーを簡単に作ることができるから、初心者にはタイマーがオススメ!」と言ってる記事を見かけたので、鵜呑みにしてタイマーを作ることにしました。
ただ時間を測るだけじゃ面白くないので、「時給を設定しておくと作業時間に見合った給料を計算してくれる」という機能もつけます。#つけたい機能
– タイマー関連
– 「開始」「一時停止」「完了」ボタンで動かせるタイマー
– 時給とタイマーの時間から給料を計算
– 起動中のタイマーのリセット(間違えて開始ボタンを押してしまった時に、余分な給料が発生するのを防ぐのため)– お金関連
– 時給の変更
– 給料のリセット– 履歴関連
– タイマーの起動履歴(開始日時と終了日時、タイマーの時間)
– ↑この履歴の削除(1件 / 全件)
– 合計作業時間の表示#環境
– PC : windows10
– 言語 : python 3.7.6#実際に作ったもの
##メイン画面タブ![2020-06-02.png](https://qiita-image-store.s3.
マイページからいいね(LGTM)順が消えたので Qiita API 使って取得する
# 初めに
いいね順が見れなくなったので、コードを書くことにしました。
消されたということは、需要がなかったんですかね…# 動作環境
– Windows 10
– Python3.7.1(Anaconda)# コード
USER_ID を変更すれば、別ユーザーの投稿一覧も取得できると思います。
“`python
import http.client
import json
import mathCONN = http.client.HTTPSConnection(‘qiita.com’, 443)
USER_ID = ‘riekure’
PER_PAGE = 100class Api:
# リクエスト結果をJSON形式で返す
@staticmethod
def request(http, url) :
CONN.request(http, url)
res = CONN.getresponse()
data = res.read().decode(‘utf-8’)
returnplt.close() だけではメモリが解放されない。plt.clf() → plt.close() とするべき。
# 要約
“`python
# NG
# メモリが解放されない
plt.close()# OK
# メモリが解放される
plt.clf()
plt.close()# NG
# 順番を逆にするとメモリが解放されない
# plt.close() で figure を閉じると、描画内容を clear 出来なくなるからだろう。
plt.close()
plt.clf()
“`# 経緯
一度に数千枚のグラフを描画していた所、out of memory エラーが出てしまいました。 毎回“plt.close()“をしていたので何故だろうと思い以下の実験方法で調べました。その結果、“plt.close()“だけではメモリが解放されない事が分かりました。そして、“plt.clf() → plt.close()“とすればメモリが解放される事が分かりました。
# 実験方法
メモリサイズが大きいグラフを10回連続でプロットします。
各プロット終了時のメモリ使用量を記録しておき、プロット回数とメモリ使用量の関係を調べます。
この手順を以下の4パターンで行います。||後処理
【Python】Udemy 画像判定AIアプリ開発 Part1
pipでflickrapiをインストールしようとしたらエラーが出力
##環境
Windows10
python3.7.6
Anaconda##内容
pipでflickrapiをインストールする為,下記コマンドを入力“`
(tf140) C:\Users\ユーザー名>pip install flickrapi
“`エラーが発生
“`
ERROR: Exception:
Traceback (most recent call last):
File “C:\python\envs\tf140\lib\site-packages\pip\_vendor\urllib3\response.py”, line 425, in _error_catcher
yield
File “C:\python\envs\tf140\lib\site-packages\pip\_vendor\urllib3\response.py”, line 507, in read
~~省略~~
raise Reaゼロから始めるLeetCode Day43「5. Longest Palindromic Substring」
#概要
海外ではエンジニアの面接においてコーディングテストというものが行われるらしく、多くの場合、特定の関数やクラスをお題に沿って実装するという物がメインである。その対策としてLeetCodeなるサイトで対策を行うようだ。
早い話が本場でも行われているようなコーディングテストに耐えうるようなアルゴリズム力を鍛えるサイト。
せっかくだし人並みのアルゴリズム力くらいは持っておいた方がいいだろうということで不定期に問題を解いてその時に考えたやり方をメモ的に書いていこうかと思います。
[Leetcode](https://leetcode.com/)
[ゼロから始めるLeetCode 目次](https://qiita.com/KueharX/items/6ee2502c3b620c795b70)
前回
[ゼロから始めるLeetCode Day42「2. Add Two Numbers」](https://qiita.com/KueharX/items/4c2734a5d0b5db87f1b3)今はTop 100 Liked QuestionsのMediumを解いています。
RubyとPython間のプロセス間通信を行う(POSIX メッセージキュー)
# 概要
rubyとpythonのdaemon間でデータの受け渡しをredis(Pub/Sub)[^Streams]を使って考えていたら、プロセス間通信(POSIX IPC)使ったほうが手軽だよと天の声が聞こえたので試してみました。
なお、今回はraspberry pi上で動かすので、電源問題のためにもプロセス数は可能な限り減らす作戦で検討しています。
[^Streams]: redis5からPub/Sub機能よりもより信頼性の高い[Streams](https://redis.io/topics/streams-intro)という機能が増えています。
# POSIX メッセージキューとは
[POSIX](https://ja.wikipedia.org/wiki/POSIX)のシステムコール/ライブラリ関数を通じて利用できる、プロセス間通信の一つ。非同期型通信プロトコルで、誤解を恐れずにいえばRabbitMQなどのメッセージングミドルウェアの超簡易版のようなもの。POSIX準拠なので簡素なAPIでお手軽に利用できます。
詳しくは以下をご参照ください。
https://l
関連する記事
OTHERカテゴリの最新記事
-
- 2024.09.19
JavaScript関連のことを調べてみた
-
- 2024.09.19
JAVA関連のことを調べてみた
-
- 2024.09.19
iOS関連のことを調べてみた
-
- 2024.09.19
Rails関連のことを調べてみた
-
- 2024.09.19
Lambda関連のことを調べてみた
-
- 2024.09.19
Python関連のことを調べてみた