- 1. poetryの環境を.venvにしたい
- 2. FlaskにVue.jsからGET、POSTする方法
- 3. rangeで指定する範囲の数字のリストを作成
- 4. ゼロから始める機械学習 上位を狙う編
- 5. DRF, Vue.js, Dockerでmarkdownブログを作ったメモ ①
- 6. TensorFlowを使って学べるレシピの紹介
- 7. flask+ajaxでスライダーの値を読み取り動的になんやかんやする
- 8. 【AtCoder】入茶記事というものを書いてみた
- 9. 【AtCoder】ABC214をPython3で解説(ABCD)
- 10. Pythonでエラーなく落ちる(Pillowのバージョン変更で対応)
- 11. 10行くらいのPythonコードでTikTokから動画情報を取得する方法
- 12. リモートカメラシステム (MQTT ブローカーに画像をそのまま送る)
- 13. リモートカメラシステム(MQTT ブローカーの検証)
- 14. ModuleNotFoundError: No module named ‘virtualenv.seed.via_app_data’
- 15. python3 リスト内包表記のデバッグ
- 16. GCPのCloud ShellのPython2.7.16をPython3.7.3に移行する
- 17. AtCoder参加記録 No.2 ーABC214
- 18. AtCoder参加記録 No.1ーABC195
- 19. AtCoder参加記録 No.0
- 20. pythonを使ってnetatmoのapiを叩く
poetryの環境を.venvにしたい
メモ用
poetryで、仮想環境をproject内の.venvにしたい時、以下のようにする
“`\bash
$ poetry config virtualenvs.in-project true
“`## 参考
– https://www.lifewithpython.com/2020/01/python-tips-poetry-tasks.html
FlaskにVue.jsからGET、POSTする方法
ファイル構造はシンプルにこのようにしています。
“`
.
├── app.py
└── templates
└── index.html
“`# GETする方法
productsが取得したいデータになっています。
jsonifyを使って、JSONデータを返しています。portは適当につけてます。
“`py:app.py
from flask import Flask, render_template, jsonify, requestapp = Flask(__name__)
app.config[‘JSON_AS_ASCII’] = False # 文字化け防止products = [
{‘id’: 1, ‘name’:’商品1′, ‘price’:780},
{‘id’: 2, ‘name’:’商品2′, ‘price’:1280},
{‘id’: 3, ‘name’:’商品3′, ‘price’:1980},
]@app.route(‘/’)
def index():
return render_templ
rangeで指定する範囲の数字のリストを作成
##指定する範囲の数字のリスト(昇順)を作成
“`
a = list(range(1,10,2))
print(a)
#実行結果
[1, 3, 5, 7, 9]
“`
第一引数: start(含む) デフォルトは0、省略可
第二引数: end(含まない) 省略不可
第三引数: 幅 デフォルトは1、省略可##降順のリストを作成
“`
a = list(range(10,0,-1))
print(a)
#実行結果
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
“`
ゼロから始める機械学習 上位を狙う編
# 最終目的
プログラミングを全くやったことがないという状態から,機械学習を行えるようになるまで,順に勉強する.
これまでの勉強会は下記
https://qiita.com/t-baba-11/items/054bda7060952fc6bf74
https://qiita.com/t-baba-11/items/6dc947e3f3b33485ccf6
https://qiita.com/t-baba-11/items/e87c078f4e46234df322
https://qiita.com/t-baba-11/items/34f8d2f478504a339481
#機械学習のチューニングの流れ
コンペで上位を狙うために特徴量を作成する.
※結果は12位だった.
流れ
– ライブラリのインポート
– GPU環境チェック
– 関数設定
– データ読み込み
– 相関があるデータの作成
– 特徴量作成
– 学習モデルの作成
– 結果の出力#ライブラリのインポート
“`.py
import pandas as pd
import numpy as np
i
DRF, Vue.js, Dockerでmarkdownブログを作ったメモ ①
# 今回やる事
DRF, Vue, Dockerでmarkdownで書けるブログを作ったので、主に自分用メモとして残します。
参考程度にしてもらえたらうれしいです。今回は、記事一覧が返るAPIの作成までまとめます。
# 環境
python 3.7.9
django 2.2.5
vue/cli 4.5.10
vue 2.6.12
docker 20.10.7# 環境構築
環境構築は以前まとめた記事があるので、今回は省略します。
[DRF & Vue.js & Dockerでの環境構築](https://qiita.com/kRysTasis/items/afdb2fad6ae6a3522437 “DRF & Vue.js & Dockerでの環境構築”)※上記の記事ではalpineのイメージを使用していますが、今回はUbuntuのイメージを使っているのrequirements.txtでのコマンドがapt-getになります。
## 使用するライブラリ
上記の環境構築で書いたもの以外に今回はこんな感じのものを使用します。
・Markdown(DRF)
マーク
TensorFlowを使って学べるレシピの紹介
# はじめに
Axrossを運営している藤原です。
**[Axross](https://axross-recipe.com/recipes)** とは、エンジニアの”教育”と”実務”のギャップに着目し、「学んだが活用できない人を減らしたい」という想いのもと、ソフトバンクと社内起業制度にて立ち上げたサービスです。
現役エンジニアによる実践ノウハウを”レシピ”として教材化し、実際にプログラミングで実装を追体験しながら学ぶことができます。AI/機械学習をテーマにした、様々な業務領域やビジネスの課題解決に応用できる実践的な学習教材を170以上揃えています。(2021年8月時点)
Axross:https://axross-recipe.com
公式Twitter:https://twitter.com/Axross_SBiv
![Axrossアイキャッチ.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/620853/9f500e0e-a759-20e2-bb8b-480bbcfaaf9b.png)
今回は、
flask+ajaxでスライダーの値を読み取り動的になんやかんやする
# やりたいこと
– flaskを使ってウェブアプリケーションを作成したい
– スライダー(``)の値を読み取り、値に応じて要素をなんやかんや動的に変更したい
– その際ページ更新はしたくない(ajax通信で解決したい)調べれば似たような記事はあるにはあるものの、勉強も兼ねて記事にすることにした。
# やったこと
flask + jQuery + ajaxで解決した。
今回**なんやかんや**に関しては、`cv2.addWeighted()`による画像合成を行うこととした。今回のソースはすべて下記のリポジトリで公開しています。
https://github.com/ikentoh/flask-ajax![blend.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/529606/89be6209-45bb-29a8-1509-62480665c84d.gif)
## スライダーを定義する
画像合成のアルファ値の単位はパーセンテージなので、0~100
【AtCoder】入茶記事というものを書いてみた
みなさんこんにちは。uniです。
今回は、AtCoderという競技プログラミングで茶色になったので、学習期間とかもろもろ書いていこうと思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/716184/43583e6b-bd97-c429-48d7-73bdb553051e.png)
## 自己紹介
– 情報系の大学生
– 競技プログラミング歴3ヶ月弱
– 使用言語Pythonこちらがプロフィール。
https://atcoder.jp/users/uniTM
## 茶色のレベル感
茶色というのはどのくらいのレベル感なのか。AtCoderの社長の言葉をお借りします。
> 茶色になる条件は、Ratingが400以上になることです。茶色で保証できる実力ですが、正直、AtCoder内ではあまり高いレベルではありません。ただ、ここにたどり着く前に辞めてしまう人が多いので、十分にやる気がある人であるとは言えるでしょう。
> なお、他社転職サイトと比較すると、このレーティン
【AtCoder】ABC214をPython3で解説(ABCD)
ABC214のA-D問題の解説。
https://atcoder.jp/contests/abc214
## A – New Generation ABC
### 解説条件分岐の問題。
問題文のとおりに`if`を書いてあげると`AC`。### コード
“`python
n = int(input())if n <= 125: print('4') elif n <= 211: print('6') elif n <= 214: print('8') ``` ```python # 短縮コード n = int(input()) print(4 if n <= 125 else 6 if n <= 211 else 8) ``` ## B - How many? ### 解説 $a+b+c \leq S$かつ$a \times b \times c \leq T$を満たす非負整数を求める問題。 $(a, b, c)$の組み合わせなので、条件分岐と三重ループで求めることができる。 ### コード ```python # 愚直 s, t =
Pythonでエラーなく落ちる(Pillowのバージョン変更で対応)
## 状態の概要
VSCodeでF5で実行してみて、エラーも何も出ずに終了してしまう問題。自分はPyAutoGUIで起きました。## 解決策
自分の場合はPillow==8.3.1が悪さをしているみたいなので、バージョンを少し戻してみればOK。“`shell
pip install Pillow==8.3
“`## 解決にいたるまで
コメントを入れながらデバッグしていると、`import`のところで問題が起きてるっぽい。深く追ってみると、Pillowの中でエラーが起きている…“`Python
# import先のimport先の…と追っていくときに便利なコード
print(f’##{__file__}################################’)
“`追っていくと、原因の箇所は以下のようなコードになっている模様。
`from . import _imagingft as core`のところでダメになる。
ImportErrorにも引っかからないし、`except Exception as e:`の中で`traceback.
10行くらいのPythonコードでTikTokから動画情報を取得する方法
一応、TikTokは開発者向けにEndpointsの提供はしているんですが、TikTok自体のメインがモバイルなので、Webは完全に二の次という感じです。個人的には、TikTokから提供されているWebアプリと比べるとWeb向けのEndpointsはちょっと物足りないというかえらくシンプルという印象です。
https://developers.tiktok.com/
本国の開発者向けにはもう少し色々あるみたいなんですが、国外向けのTikTokのAPIはあんまり力入れていない印象です。下記はページに掲載されているサンプルです。
[oEmbed](https://oembed.com/)を利用したとてもシンプルなものになっています。Example
`https://www.tiktok.com/oembed?url=https://www.tiktok.com/@scout2015/video/6718335390845095173`response
“`json
{
“version”: “1.0”,
“type”: “video”,
“title”: “S
リモートカメラシステム (MQTT ブローカーに画像をそのまま送る)
次のシステムを構築するための検証です。
[Grove IoT スターターキット for SORACOM で作るリモートカメラシステム](https://qiita.com/ekzemplaro/items/541b82908cec46f6aa7b)調べている過程で、MQTT ブローカーに画像をそのまま送れることが分かりました。
次のページを参考にしました。
[mosquitto,paho-mqttで画像のやりとり](https://qiita.com/masa-ramenO/items/6dcb706107e9307a599e)パブリッシュ
camera.jpg という画像を送ります。“`sh:go_pub.sh
#
# go_pub.sh
#
# Aug/17/2021
#
BROKER=’violet.local’
TOPIC=’sample/imageTopic’
#
mosquitto_pub -h ${BROKER} -p 1883 -t ${TOPIC} -f camera.jpg
#
“`サブスクライブ
受け取った画像を output.jpg
リモートカメラシステム(MQTT ブローカーの検証)
次のシステムを構築するための検証です。
[Grove IoT スターターキット for SORACOM で作るリモートカメラシステム](https://qiita.com/ekzemplaro/items/541b82908cec46f6aa7b)>画像の受け渡しが MQTT ブローカー経由でできるか。
>画像ファイルは、計測した数値データと較べて、かなり大きい。以下のプログラムを作成しました。
>jpg を JSON に変換するプログラム
>JSON を publish するプログラム
>subscribe で JSON を受け取るプログラム
>JSON を jpg に変換するプログラムjpg を JSON に変換するプログラム
“`py:jpg_to_json.py
#! /usr/bin/python
# -*- coding: utf-8 -*-
#
# jpg_to_json.py
#
# Aug/17/2021
#
# ——————————————————————
ModuleNotFoundError: No module named ‘virtualenv.seed.via_app_data’
### 実行環境
Ubuntu 20.04.2 LTS
Python3.8### 状況
pipenv install コマンドを実行し、仮想環境を作成しようとしたときにエラー“`sh
Creating a virtualenv for this project…
Pipfile: /home/youichi_io/work/Pipfile
Using /usr/bin/python3.8 (3.8.10) to create virtualenv…
⠹ Creating virtual environment…ModuleNotFoundError: No module named ‘virtualenv.seed.via_app_data’✘ Failed creating virtual environment
[pipenv.exceptions.VirtualenvCreationException]:
Failed to create virtual environment.
“`### 思い当たる要因
以前、Anacondaをインスト
python3 リスト内包表記のデバッグ
“`python:python3
def debug(w):
print(f’word:{w}’)
return wlist_debug = [“apple”, “lemon”, None, “cat”, “inu”]
list_debug = [debug(s) for s in list_debug]
print(list_debug)
“`“`text:out
word:apple
word:lemon
word:None
word:cat
word:inu
[‘apple’, ‘lemon’, None, ‘cat’, ‘inu’]
“`
GCPのCloud ShellのPython2.7.16をPython3.7.3に移行する
##GCPでPython3が使いたい!
LINEBOTかLINE NotifyをGCPでPythonを定期で動かして作ろうとしていました。
そこでGCPのCloud Shellを使うことになりました。
###Cloud ShellのPythonのバージョン確認
Cloud ShellのPythonのバージョンを確認してみると…“`shell:cloud_shell
$ python -V********************************************************************************
Python 2 is deprecated. Upgrade to Python 3 as soon as possible.
See https://cloud.google.com/python/docs/python2-sunsetTo suppress this warning, create an empty ~/.cloudshell/no-python-warning file.
The command wil
AtCoder参加記録 No.2 ーABC214
#ABC214
今回参加したABC214についての参加記録2021年8月14日(土)のAtCoder Beginner Contest 214でした。
https://atcoder.jp/contests/abc214
##結果
A,B問題を正解
レート:16→28 (+12) Highest!
順位:7073/ 8405
時間: A問題53:33 B問題70:09
パフォーマンス:90##詳細
###A問題
[問題](https://atcoder.jp/contests/abc214/tasks/abc214_a)提出コード(AC)
“`python:A問題.py
a = int(input())
if a>=212:
print(8)
elif a>=126:
print(6)
else:
print(4)
“`[提出コード詳細](https://atcoder.jp/contests/abc214/submissions/25045449)
###B問題
[問題](https://atcoder.jp/contests/
AtCoder参加記録 No.1ーABC195
#ABC195
自分のモチベーションと記憶用にAtCoder参加記録を付けることにしました初参加は2021年3月13日(土)のパナソニックプログラミングコンテスト(AtCoder Beginner Contest 195)でした。
https://atcoder.jp/contests/abc195
##結果
A,C問題を正解
レート:0→16
順位:5007/7679
時間: A問題55:58 C問題97:08
パフォーマンス:330##詳細
###A問題
[問題](https://atcoder.jp/contests/abc195/tasks/abc195_a)提出コード(AC)
“`python:A問題.py
m ,h =map(int,input().split())
if h%m==0:
print(‘Yes’)
else:
print(‘No’)
“`[提出コード詳細](https://atcoder.jp/contests/abc195/submissions/20892291)
###B問題
[問題](https://a
AtCoder参加記録 No.0
##挨拶
始めましてこんどうです。
プログラミングもQiitaも初心者ですが自分用に記録をつけようと思います。
AtCoder参加記録を付けるうえでもし参考にする人がいたとき用に自分の経歴について書いておこうと思います。##バックグラウンド
国立大学工学部化学系大学3年生
プログラミングは大学2年の時に趣味で始める
大学2年の後期に[東京大学の公開講座GCI 2020Winter修了](https://gci.t.u-tokyo.ac.jp/gci-2020-winter/)
大学3年生の4月にITパスポート取得
TOEIC 560点取得 (2021年7月)##これまでの学習
プログラミングを始めようと思ったきっかけは、コロナで時間が余ったこと、プログラミングができたらかっこいいな、知識があって損はないよね!というすごく漠然とした理由で学習し始めました。
私は基本的に独学でプログラミングを学習しました。
すらPyや独学プログラマーで言語の基礎を学習したのち、データ分析に興味をもち東京大学で機械学習の講座をしているとのことなので参加しました。
また、[サポーターズ](https:
pythonを使ってnetatmoのapiを叩く
## netatmoとは?
室温とか湿度とかを計測するIoTの機械です。
この機械の中央管理のServerがあり、APIが生えており、こちらのAPIを利用します。
本記事ではAPIをpythonで叩くところまでを実施します。https://www.netatmo.com/en-us
## どのようなデータが取れるのか?
まずは管理画面のスクリーンショットを添付します。
![スクリーンショット 2021-08-13 18.05.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/217551/7ceaddf9-29bf-b533-e059-d2fbd6f48fd3.png)
上の画像はnetatmoの管理画面のスクリーンショットです。
左枠にある、気温、湿度、気圧、CO2濃度、騒音を取得できます。
またこれら追加してAPIの場合には、緯度経度のデータも取得できます。## データ取得の方法
認証はOAuth2が使われているため、[Netatmo ウェザーステーションのAPIを使ってみる