- 1. discord.py入門(2)
- 2. discord.py入門(1)
- 3. fishシェル使用時にvirtualenvを通常のコマンドで立ち上げられない
- 4. Python3.8の新機能を一部触ってみた①
- 5. 【Python】BeautifulSoupとrequestsを使ってJリーグの選手情報をスクレイピングして表にしてみた!
- 6. 打倒、Pythonのグローバル宣言
- 7. (補足)Python3で「Tello_Video」を動かす
- 8. Azure SDK for Python を使ったプログラムを動かす時に”ModuleNotFoundError: No module named ‘azure'”が出た
- 9. トイドローンTelloをPython3で制御する
- 10. Everyone mo Kane-Kosugi ni narou!!!
- 11. Pythonでしりとりを実装
- 12. unsafeなコードや脆弱性の高いソフトウェアが書きずらく拡張性が高くきれいに書けるxlwings
- 13. OpenCV-pythonでjpeg圧縮
- 14. python:日付関係
- 15. 【三田本店】機械学習エンジニアによるラーメン二郎、食べログ口コミ分析【ソース付き】
- 16. Pipenv環境下でpsycopg2がpipenv lock時にエラーを吐く時の対処法
- 17. pythonのisdigit()はマイナスの整数を判定できない
- 18. Kerasで作成したニューラルネットの中間層での出力を用いてXGBoostで予測する
- 19. 【プログラミング初心者】プログラミング用語 変数・定数について
- 20. Microsoft Azure Cognitive Services Faceを動作させてみる その3
discord.py入門(2)
# はじめに
discord.pyの非公式のサーバーを運用しています(開発者の方もいますが)。
ここでは質問も受け付けています。また、**長期的にサポートが欲しい方**向けに、個人チャンネルを作成しそこでサポートを受けることもできます。
個人サポートを受けたい方は、下の招待urlから入り、`@すみどら#8931`にDMをお願いします。
https://discord.gg/KPp2Wsu **この記事についての質問もこちらにお願いします**# この記事について
この記事はdiscord.pyについて段階を踏んで勉強していくための記事になります。
まず始めに基本の書き方を学び、次に発展的な内容を学びます。
**【シリーズ】**[discord.py入門(1)](https://qiita.com/sizumita/items/9d44ae7d1ce007391699)
[discord.py入門(2)](https://qiita.com/sizumita/items/b37e74fca41d98077a18)# 注意
**この記事は少しでもPythonができる人向けになり
discord.py入門(1)
# はじめに
discord.pyの非公式のサーバーを運用しています(開発者の方もいますが)。
ここでは質問も受け付けています。また、**長期的にサポートが欲しい方**向けに、個人チャンネルを作成しそこでサポートを受けることもできます。
個人サポートを受けたい方は、下の招待urlから入り、`@すみどら#8931`にDMをお願いします。
https://discord.gg/KPp2Wsu **この記事についての質問もこちらにお願いします**# この記事について
この記事はdiscord.pyについて段階を踏んで勉強していくための記事になります。
まず始めに基本の書き方を学び、次に発展的な内容を学びます。
**【シリーズ】**[discord.py入門(1)](https://qiita.com/sizumita/items/9d44ae7d1ce007391699)
[discord.py入門(2)](https://qiita.com/sizumita/items/b37e74fca41d98077a18)# 注意
**この記事は少しでもPythonができる人向けに
fishシェル使用時にvirtualenvを通常のコマンドで立ち上げられない
久々にvirtualenvを使おうと思ったら謎のシェルスクリプトエラーが発生しハマったのでメモ。
## 結論
`source venv/bin/activate`の代わりに
`source venv/bin/activate.fish`
を使う。
`venv`の部分はもちろん作成した仮想環境名。## 参考
https://github.com/pypa/virtualenv/issues/853
Python3.8の新機能を一部触ってみた①
# はじめに
弱々Pythonエンジニアがpython3.8の新機能を一部触ってみました。
よくわからないものはすっ飛ばしてます(ビルドだプロファイルだなんだのは飛ばしてます)。
詳しくは[公式ドキュメント参照](https://docs.python.org/ja/3/whatsnew/3.8.html)# セイウチ演算子
>大きな構文の一部として、変数に値を割り当てる新しい構文 := が追加されました。 この構文は セイウチの目と牙 に似ているため、「セイウチ演算子」の愛称で知られています。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/357470/a43c0f97-a343-9a26-4920-517f01732294.png)
セイウチ演算子カワイイ“`py
array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]# python3.8以前
# n = len(array) > 1
【Python】BeautifulSoupとrequestsを使ってJリーグの選手情報をスクレイピングして表にしてみた!
#はじめに
##今回やりたいこと
Webスクレイピングによって、Jリーグのデータサイトの情報を収集&分析したいと思いました。
その第1段階としてまずはデータを収集し、それを表にまとめてみました。
##結果
以下がJリーグの川崎フロンターレというチームの選手一覧の情報を表にまとめた結果です。
※CSVファイルとして出力したものを、Googleのスプレッドシートで開いています#きっかけ
元々サッカー観戦が好きで、その流れでスポーツのデータ分析にも興味を持っていました。
そしてプログラミングを学ぶうちに自分でもできるのではないかということでプログラムを作り始めました。
#コードと解説
##前提
– 現在のスキル
– Progate終了
– Ruby on Ra
打倒、Pythonのグローバル宣言
#global宣言
テーマはPython3のglabal宣言のスコープについて。
定義の部分が曖昧な理解だったため数時間無駄にしてしまったが、いろいろ調べて勉強になったので記録に残しておきます。#失敗した例
すごく簡単に書くとこんなコード。あくまでサンプルです。“`Python:sample.py
def func():
global x
x = 20
print(f’funcのx={x}’)def main():
x = 10
func()
print(f’mainのx={x}’)if __name__ == ‘__main__’:
main()
“`どちらも20が出力されるかと思いきや。
“`text:bash
$ python3 sample1.py
funcのx=20
mainのx=10
“`
なんで??!!global宣言しとるやんけ!!とか思い数時間あれこれ調べたが解決。↓↓の通り。###大事なのはスコープ
`global x`での宣言は下記2つを意味する。– グローバルスコー
(補足)Python3で「Tello_Video」を動かす
#はじめに
このページは,
[Tello-Pythonのサンプル「Tello_Video」を動かす](https://qiita.com/hsgucci/items/c9082690c6d0695b722f)
の補足ページです.
本来,Python2用に作られているTello_Pythonを,Python3で動かすためのアレコレです.#概要
DJI公式のTello用Pythonサンプルプログラム「Tello-Python」のうち,[Tello_Video](https://github.com/dji-sdk/Tello-Python)
をPython3で動かす方法を記述します.
Python2のプログラムをPython3に対応させるには,主に以下の作業を行います.
– print文の修正
– responseをstr()でstr型と明示
– try except文のas
– pip系のインストールをpip3でやり直し既に下記ページで「tello_state.py」「Single_Tello_Test」のやり方を解説してくれています.
参考URL:[トイ
Azure SDK for Python を使ったプログラムを動かす時に”ModuleNotFoundError: No module named ‘azure'”が出た
# 記事の内容
タイトルの通りですが、AzureのPython SDKを動かそうとしたら以下のメッセージが出てハマったので対応した内容をメモModuleNotFoundError: No module named ‘azure’
# 参考
チュートリアルの仮想環境構築まで実施
[Python 用 Azure ライブラリを使用したクラウド開発の開始](https://docs.microsoft.com/ja-jp/azure/python/python-sdk-azure-get-started)その後、こちらのプログラムを実行
[Azure Management LibraryでPythonからAzureを操作する](https://news.mynavi.jp/article/zeroazure-24/)# コード
参考サイトのままですが、一応~~~ AzureSample.py
from azure.common.credentials import ServicePrincipalCredentials
from azure.mgmt.resource imp
トイドローンTelloをPython3で制御する
今回は,トイドローンTelloをpythonを使って制御します!
#目標
・Python3でterminalからドローンを制御できるようにする
ex) takeoffと打ったら離陸、landと打ったら着陸#動作環境
Mac Mojave 10.14.5
Python ver. 3.7.0
#前提
・アプリからTelloを動かしたことはある
・pcにPython3をインストール済み
#1.サンプルコードのダウンロード
今回は、[Ryze Technology社](https://www.ryzerobotics.com/jp/)が公式に出しているdji SDKを参考にして実装することにします。以下からコードをダウンロードしてください。
URL: https://github.com/dji-sdk/Tello-Python
または、ターミナルで以下を実行してください。“`
git clone https://github.com/dji-sdk/Tello-Python.git
“`#2.Single_Tello_TestをPython3に対応させる
このSDKはPyt
Everyone mo Kane-Kosugi ni narou!!!
#1. Hajimeni
Everyone ha kane kosugi san no romaji diary wo shitte imasuka?
English ga yomeru kigasuru to wadai ni natta yatsu desu!
(Ima ha koushin sarete nai youdesu…)・[ズルいと話題! ケイン・コスギの爆笑ローマ字日記。しかし、その本当の理由は・・・](https://matome.naver.jp/odai/2135043827007760301)
・[KANE & STAFF DIARY – Kane Kosugi](http://kanekosugi.com/wp_diary/)Sports ya Haiyuu toshite katuyaku suru kane san.
Totemo 45 sai no body toha omoe masen!
Watashi ha “Kiniku Banduke” to “Ninja sentai Kakurenjaa” no “Black ninja” ga
Pythonでしりとりを実装
久しぶりの記事の投稿です。
記事を上げていない間にちょっとずつPythonの勉強を進めていたので、何となくPythonやプログラミングの感覚が掴めてきた気がします。そこで、しりとりを作ってみようと思い実装してみました。
しりとりを作る上で、
・前の単語の最後の文字を引き継ぐ。=「しりとり」
・既に使った単語は使えない。
・「ん」で終わったら負け。
この三つのルールを守ることができるように留意しました。“`Python:word_chain.py
hiragana_1 = “しりとり”
used_hiragana = []
print(“しりとりスタート!\n”, hiragana_1)while True:
hiragana_2 = str(input(“ひらがなを入れてください: “))
if hiragana_2[0] != hiragana_1[-1]:
print(“最初の文字が間違っています。”)
break
elif hiragana_2 in used_hiragana:
print(“
unsafeなコードや脆弱性の高いソフトウェアが書きずらく拡張性が高くきれいに書けるxlwings
#MS Office(Excel)で危険なコードを書いたことはありませんか?
回答->この様なときは、Pythonを使いましょう
理由は以下のようなコードを書けないからです。“`vb
Dim A As Variant
Dim B As Variant
A = 1
B = ‘1’
Private Function C As Variant
C=A+B
End Function
“`
何故か2が出てきますが、このコードはよくバグを作り出します。Pythonならエラーにしてくれます。
もし、Pythonで2または、’11’を出したいときは、“`excels.py
A = 1
B = ‘1’
def C_Int():#2
return A+int(B)def C_Str():#’11’
return str(A)+B
“`の様に書かないとなりません、明示的に書くことがバグの温床を打ち止めできるので、非常に良いことです。
また、マクロでとてもあるあるの話だと思いますが、外注していたら見ずらくインシデントを下げてなく機能が追加しずらいといったことが
OpenCV-pythonでjpeg圧縮
指定したフォルダ内について、「.jpg」で終わる全てのファイルを圧縮する。
(読み込み、圧縮エラー時の処理など書いておらず粗いです)
“`py
import cv2
import glob
import osQuality = 10
def img_encode(img):
encode_param = [int(cv2.IMWRITE_JPEG_QUALITY), Quality]
result, encimg = cv2.imencode(“.jpg”, img, encode_param) # (bool値,エンコードしたImageオブジェクト)のタプルが返ってくる
return cv2.imdecode(encimg, cv2.IMREAD_UNCHANGED)def output_imgs():
path_list = glob.glob(r”<パス>\*.jpg”)for i, path in enumerate(path_list):
img = cv2.imread(path)
python:日付関係
#import
“`py
import datetime
“`#文字列から日付へ変換
“`py
str_day= ‘2020/1/15’
first_day= datetime.datetime.strptime(first_day, ‘%Y/%m/%d’)
“`→`2020-01-15 00:00:00`
#datetimeからdateへ変換
“`py
first_day.date()
“`→`2020-01-15`
#今日の日付の取得
“`py
today=datetime.date.today()
“`#日付の差分
date同士やdatetime同士で引き算をすることができる。
下の例はtodayはdate、first_dayはdatetimeでdateに合わせ引き算をする例“`py
dt=today-first_day.date()
“`引き算した結果は何日と何時間という結果になる
→`51 days, 0:00:00`
結果から日の差分だけ取り出したいときは“`py
dt.days
“`とすると
→`51`
【三田本店】機械学習エンジニアによるラーメン二郎、食べログ口コミ分析【ソース付き】
## はじめに
[Qiita x COTOHA APIプレゼント企画][1]をきっかけにAPIを使って分析を行ってみることにしました。今回は自然言語処理の実務でよくありそうなタスクである口コミ分析を行います。担当
@YuiKasuga 記事作成、スクレイピング、感情分析、ユーザ属性推定
@asmrt_ds 校正・校閲、WordCloud、キーワード抽出### COTOHA APIとは
https://api.ce-cotoha.com/
NTTコミュニケーションズが提供している自然言語処理や音声処理を実行できるAPI群です。
本記事では以下のAPIを使いました。– キーワード抽出
入力した文章の中に含まれる特徴的なキーワードを抽出します。– 感情分析
入力した文章がポジティブなのかネガティブなのかどちらでもないのか判定します。
また、文章をフレーズごとに分解し、それぞれについて感情表現ラベルが付与されます。– ユーザ属性推定
入力した文章をもとに年代、性別、趣味、職業などの人物に関する属性を推定します。API呼び出しの実装は以下の記事のソースコードを利用
Pipenv環境下でpsycopg2がpipenv lock時にエラーを吐く時の対処法
# 経緯
herokuにあげようとライブラリを追加していたとき、psycopg2がひっついてきて、Pipfile lockでエラー吐きまくるので困った話## 環境
| 項目 | バージョン |
| —- | —– |
| os | Ubuntu18.04LTS|
| python | 3.7 |
| pipenv | version 2018.11.26|# 解決方法
***なぜ効いたかなどは調べられていないので参考程度に。***
1. psqlをインストールします
“`shell
$ sudo apt upgrade
$ sudo apt install postgresql postgresql-contrib“`
以上!!!(なんで?ワカラナイノトテモキモチワルイ….)
pythonのisdigit()はマイナスの整数を判定できない
## 事の発端
pythonのisdigit()でマイナスの整数を判定しようとしたら、出来なかったので調査した。調査時間10分程度。## 参考サイト
参考サイトを見たほうがいいです。## サンプルコード
“` python3
def is_num(a):
try:
int(a)
except:
return False
return Truedef main():
s = ‘-1’
print(‘s =’, s)
print(‘isdecimal:’, s.isdecimal())
print(‘isdigit:’, s.isdigit())
print(‘isnumeric:’, s.isnumeric())
print(‘is_num:’, is_num(s))if __name__ == “__main__”:
main()
“`
## 実行結果
Kerasで作成したニューラルネットの中間層での出力を用いてXGBoostで予測する
# 概要
Kerasを用いて作成したニューラルネットの中間層での出力結果を新たな特徴量として、XGBoostで学習したいと思っていたのが、思いの外簡単に実現することができたので、まとめておきます。# ニューラルネットの中間層での出力を用いてXGBoostで予測
手順は、以下のような流れになります。1. 学習データを用意
2. ニューラルネットの学習
3. 中間層での出力結果を新たな特徴量に
4. XGBoostで学習なぜ中間層の出力を用いて新たな特徴量を作るかというと、中間層で得られる出力は元の特徴量を良い感じに要約してくれていて、最終的な予測は、ニューラルネットよりXGBoostの方が良い精度が出そうと考えたためです。
入力層を特徴量、出力層を元の特徴量とすれば、中間層は圧縮された特徴量が作れ、入力層を特徴量、出力層を目的変数とすれば、目的変数に貢献する特徴量が作れるだろうと考えました。## 1.学習データを用意
“`train_data.py
X_train = df_train.drop([‘Pred’], axis=1)
y_train = df_train
【プログラミング初心者】プログラミング用語 変数・定数について
#はじめに
プログラミングの学習を始めて3ヶ月ほど経過した駆け出しエンジニアです。
プログラミングの学習を始めたばかりの頃は、新しい用語が出てきて理解するのが大変でした。3ヶ月たった今でも、次々と始めて聞く用語が襲撃してきます笑笑
ですが、それに立ち向かうのがエンジニアの宿命だと受け入れ日々奮闘中です。今回は変数・定数についてまとめました。
プログラミング初心者の役にも立てれば幸いです。#プログラミングとは
簡単に言うと、**コンピュータへの指示を書くこと**です。コンピューターに指示を出すためには、プログラム(コンピューターが作業を実行する順番)を作成します。
コンピューターは人間の言葉を理解できません。そのため、コンピューター語を使用して指示を出す必要があります。コンピューターは**プログラムを使用して命令を出さない限りただの怠け者**なんです笑笑
#変数
変数とはズバリ、**データを一時的に保存するための箱**です。変数につけた名前を**変数名**、保存されているデータを変数の**値**と呼びます。
値だけだと、なんの値かがわかりにくく、プログラムを書いてい
Microsoft Azure Cognitive Services Faceを動作させてみる その3
[その2](https://qiita.com/yoshiono/items/fc0b696e97a8690ddd05)からの続きです。
# 付録
##以下のSnippetをJupyter-notebookのセルに順番に張り付けてKEY、ENDPOINTを設定すると動作するはずです。PERSON_GROUP_IDの値は任意です。“`python:FaceQuickstartのsnippet_imports部分.py
#
import asyncio
import io
import glob
import os
import sys
import time
import uuid
import requests
from urllib.parse import urlparse
from io import BytesIO
from PIL import Image, ImageDraw
from azure.cognitiveservices.vision.face import FaceClient
from msrest.authent