Python3関連のことを調べてみた2020年03月03日

Python3関連のことを調べてみた2020年03月03日

PythonとFlaskをインストールする(Windows10)

### 参考サイト
– [Python3.7 windows10環境で『Flask』の最小構成を試す](https://karupoimou.hatenablog.com/entry/2019/05/20/191515)

Python3.7のインストール
https://www.python.org/downloads/release/python-376/

上記からインストーラタイプ(`Windows x86-64 executable installer`)をDL

インストールする(もし、PATHが通っていなかった場合は再実行し
`Modify→add python to environment variablesにチェックを入れ再インストール`

インストールされているか確認

“`
python -V

Python 3.7.6
“`

Pythonインストール確認後、下記コマンドでFlaskをインストール

“`
pip install flask
“`

作業ディレクトリにmain.pyを作成し、以下を記述

“`python
#coding:utf-8

元記事を表示

最近pycファイル見ないなーと思っていたら、python3でpycacheに隔離されていた話

pythonを触ってる中で
「あれ…?pycファイル最近見ないな?」

と気づきました。

そしたら、仕様がしっかりと変わっていた(結構古いですが)ので書いてみました

## pycファイルとは
公式にはこんな説明が書いています。

> CPython compiles its source code into “byte code”, and for performance reasons, it caches this byte code on the file system whenever the source file has changes. This makes loading of Python modules much faster because the compilation phase can be bypassed. When your source file is foo.py, CPython caches the byte code in a foo.pyc file right next to the source.

https://www.pyth

元記事を表示

Python初心者が ModuleNotFoundError: No module named ‘tweepy’ で挫けそうになった話

# あらすじ 
インストールしたはずのtweepyが何故かimport出来なかった人の話です。
解決に丸一日かかりました。多分teratail[https://teratail.com] が無かったら解決してない。
有識者の皆さん本当にありがとう

# 便利だったコマンド
**`pip3 show tweepy`** — Macのターミナルで使用 インストール出来てるかを確認出来た。location
で何処にあるか確認出来ました。

**`import sys`**
**`import pprint`**
**`pprint.pprint(sys.path)`** — この3行を一つで使ってました。もし使う人がいたらpython(?)の.pyファイルで保存して実行してみてください。何処を参照してるかが分かります。

[https://qiita.com/kakari8888/items/86d9c255204b063c87ee]
この記事がとても助かりました。

# 解決のあらすじ
結果的には上記のpip show tweepyで分かった
locationの**/usr/lo

元記事を表示

【初心者】Python、FlaskとHerokuで、ニャンコつぶやきフォームを作った + Flask-Bootstrap導入

###※今回は、前回作成したニャンコつぶやきフォームを一部修正してFlask-Bootstrapを導入した。 前回の記事は、[コチラ](https://qiita.com/nooonchi/items/6457891202cd37ea824e)

#(1)アウトプットイメージ
スクリーンショット 2020-03-02 21.59.17.png

####以下が前回作成したニャンコつぶやきフォーム
スクリーンショット 2020-03-01 22.18.21.pngスパルタキャンプPython編 2019 Day2 課題

動画上では課題の答えがわからなかったので自分なりに解いてみました。
スパルタキャンプのライブ動画で学習している方の参考になればと思い書きました。

#課題
オブジェクト指向プログラミングの初級問題です。
オブジェクト指向を使った良いコードの書き方というよりも、正しい文法で記述できるかを目的としています。

次のコードが正しくなるようなCircleクラスを実装してください。
areaは面積、perimeterは周囲長(円周の長さ)という意味です。

“`python:circle.py
#半径1の円
circle1 = Circle(radius=1)
print(circle1.area()) #3.14
print(circle1.perimeter()) #6.28

#半径3の円
circle3 = Circle(radius=3)
print(circle3.area()) #28.26 ←恐らく動画での28.27は誤り
print(circle3.perimeter()) # 18.84 ←恐らく動画での18.85は誤り

#次のコードが正しく動作するようなRectang

元記事を表示

Pythonでクイックソートを書いてみたメモ

クイックソートについて自分用にメモを書いてみました。
# クイックソートとは
– 分割統治法に基づく高速なソートアルゴリズムで、大きなデータサイズに対応できる。
– 計算量はO(nlogn)
– logn個の階層があり、各層ごとの計算量はO(n)であるため。
– ソートすると同じ値の順序が変わってしまう不安定なソート
– 一時的にデータを保存するメモリは必要ない

# コード
“`python:quick_sort.py
def partition(A, p, r):
x = A[r-1]
i = p-1
for j in range(p, r-1):
if A[j] <= x: i += 1 A[i], A[j] = A[j], A[i] A[i+1], A[r-1] = A[r-1], A[i+1] return i+1 n = int(input()) A = list(map(int, input().split())) def quick_so

元記事を表示

ネコと犬の種類判別器を作ってみた

#はじめに
わたしは猫さんが大好きです!
機械学習を初めてから一番最初にやりたいと思ったのが猫の種類を当てるモデルを作ることでした。
作ってみたので復習のために書いていこうと思います!
今回はデータセットにわんちゃんも入っていたのでわんちゃんも猫さんも種類を判別できるモデルを作成しました!

#データセット
今回、データセットはオックスフォード大学の公開しているデータセットを使用しました
[The Oxford-IIIT Pet Dataset](http://www.robots.ox.ac.uk/~vgg/data/pets/)

#開発環境
・Google Colaboratory

#使用したもの
・python3
・Inception V3

#モデル作成
##まずはいろんなものをimport
“`python:cats.ipynb
import tensorflow as tf
from tensorflow import keras
import numpy as np
from keras.utils import np_utils
import matplotli

元記事を表示

SIMRIWの導入

#Git for windows の導入
1.https://gitforwindows.org/
2.インストール
3.再起動
4.バージョン確認 ’git –version’

#SIMRIW with Pythonの導入
##作業手順
1.Anacondaで仮想環境の構築(simriw_test)
2.pip install -U git+https://ky0on@bitbucket.org/ky0on/pysimriw.git
3.インストールの確認 pip list
4.simriw.py の実行→エラー
5.ライブラリのインストール
 1.hjson
 2.numpy
 3.pandas
 4.print_function
 5.matplotlib
6.画像ファイル、csvファイルの出力先フォルダの作成
7.パスの上書き
##参考
https://github.com/ky0on/simriw
https://github.com/ky0on/pysimriw

元記事を表示

呼び出し元メソッドをinspectを使わずに判別する

同ディレクトリ上に3つのファイルがある。

“`python:test.py
import sys

class Aiueo(object):

def common(self):
print(1)
print(2)
print(3)

def func_a(self):
print(4)
self.common()

def func_b(self):
print(5)
self.common()
“`

“`python:test_a.py
import test
test.Aiueo().func_a()
“`

“`python:test_b.py
import test
test.Aiueo().func_b()
“`

test_a.pyを実行すれば4123と打たれ、
test_b.pyを実行すれば5123と打たれる。
これが現在の仕様。

ところが後になって仕様変更があり、
4123、5123ではなく、4123、51

元記事を表示

Flask導入〜Blueprint適用メモ

タイトルのことをなるべく簡単に行ってみます。

##Flaskのインストール

“`
$ sudo pip3 install flask
“`

##ディレクトリ構成

“`console
$ cd ~/workspace/sample-flask/

$ ls
server.py
“`

“`server.py
from flask import Flask

app = Flask(__name__)

@app.route(‘/’)
def func_1():
return ‘Hello world’

@app.route(‘/test’)
def func_2():
return ‘Test’

if __name__ == ‘__main__’:
app.run(host=’0.0.0.0′, port=80, debug=True)
“`

##実行コマンド

“`console
$ python3 server.py
* Serving Flask app “server” (lazy loading)
* Environmen

元記事を表示

【LINE bot】おいら、だじゃレンジャー!その2

#はじめに

以前の作成した、[だじゃレンジャーLINE bot](https://qiita.com/Hexans/items/06b9abdcfb4a838a18f7)の更新。

#問題点

1. 小学生には難解な漢字が多く読めない。
2. 与えられたお題(キーワード)でだじゃれを返せない場合、botからのレスポンスがなく、利用者が不安に。

#目的

1. 漢字にフリガナをふる。
2. だじゃれを返せない場合は、返せない旨を伝える。

#コード

## 1. 漢字にフリガナをふる。

[こちらの記事](https://qiita.com/kt-tsutsumi/items/599f287f15b8e4cb84f3)を参考にした。
手順としては、
1. Mecabで形態素解析
2. 漢字であればふりがなをふる。ふりがなは形態素解析の結果を用いる。
3. ふりがなは括弧書き()で、送り仮名はふりがなとは別に()の外に表示。

“`python:furigana.py
import sys
import MeCab
import re

def henkan(text) :

元記事を表示

[HackerRank] Alphabet Rangoli と 再帰呼び出し

# はじめに
[[HackerRank] Alphabet Rangoli](https://www.hackerrank.com/challenges/alphabet-rangoli/problem)
について再帰呼び出しを使用して解いたので記事にしたものです.
以下にネタバレがあるので先に解きたいひとは上のリンクからどうぞ.

# 問題文(要約)
整数Nが入力される.大きさNのアルファベット・ランゴリを出力せよ.(ランゴリはインドのフォークアートであるらしい.)

いくつかのサイズのアルファベット・ランゴリの例↓

### size 3
“`
—-c—-
–c-b-c–
c-b-a-b-c
–c-b-c–
—-c—-
“`
### size 5
“`
——–e——–
——e-d-e——
—-e-d-c-d-e—-
–e-d-c-b-c-d-e–
e-d-c-b-a-b-c-d-e
–e-d-c-b-c-d-e–
—-e-d-c-d-e—-
——e-d-e——
——–

元記事を表示

【Python GUI】Tkinterを使ったDICOMのコントラスト調節とBMP変換

#目的

コード保存。中身は汚い。
– DICOM画像を任意のコントラストに調節しBMPに保存。
– コントラスト調節の式が怪しいかも。

#コード

“`python:WL_WW_changer.py
import cv2
import numpy as np
import glob
import os
import shutil
import os, tkinter, tkinter.filedialog, tkinter.messagebox
from tkinter import filedialog
import pydicom
#from pydicom.data import get_testdata_files

def adjusted_WL_WW():
#delete previous folder
if os.path.exists(“adjusted_WL_WW”):
shutil.rmtree(“adjusted_WL_WW”)

#input WL and WW
WL = int(inpu

元記事を表示

【Deep Learning】SONY neural network consoleをCUIから実行

#コード内容
コード保存のため投稿。 コードは汚い。
SONYが開発した、neural network console(NNC)をCUIから実行。SONYが提供しているNNablaライブラリを使用する。

#準備
– NNCのProject File(*.sdcproj)
– Neural networkのArchitecture(*.nntxt)
– 学習したparameter(*.h5)
– Testするinput data(*.csv)

#実行

“`bash:start_DL.sh
#!/bin/bash

#delete previous output
rm output_result.csv

#folder_dir=`pwd`
sdcproj=`ls *.sdcproj`
testdata=`ls *.csv`
network=`ls *.nntxt`
parameters=`ls *.h5`

#Value test data
nnabla_cli forward -c $network -p $parameters -d $testdata -o

元記事を表示

株価をダウンロードしてプロット

### はじめに

株取引を行うために統計を取りたい、と思い、株価のデータの取得方法を調べました。
株価をダウンロードしてプロットするところまでpython で動かせたので、メモします。東京証券取引所で取引されている3銘柄のデータをダウンロードして、こんな感じでプロットできました。

![Figure_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/294040/ef284b61-5ad1-8759-560b-db487c9ce409.png)

何か大儲け、できないかな。。。。なんて。^^)

### Yahoo Finance からデータを取得するライブラリ

方法はGoogle先生に紹介していただいたページを拝見していろいろ調査したのですが、なかなか思うように「ここ1~2年のデータをスクリプトでダウンロードして比べる」という用途に使えなく苦労しました。Quandl, pandas_datareader などをさまよった挙句,

[yahoo-finance-api2](https://githu

元記事を表示

KaggleでOptunaを用いてXGBoostのハイパーパラメータをチューニングする

# 概要
東大GCIのデータサイエンティスト育成講座内で行われたコンペティションの上位解法の中に、Optunaを用いてXGBoostのハイパーパラメータを決定したというのを見かけました。

その時は、機械学習初心者(今も)だったので、「ふーん、そんなのがあるんだ」程度に見ていたんですが、いざKaggleのNCAAコンペでモデリングに取り組んでみると、ハイパーパラメータをどうやって決定するかで、悩みに悩んでいたところ、「Optunaというものがあったなぁ」と思い出したので、公式チュートリアルを見ながら自分流に調べて実装してみたものをまとめておきます。ちなみにQiita初投稿です。
# Optuna
Optunaは自動ハイパーパラメータ最適化ソフトウェアフレームワークであり、特に機械学習のために設計されたものであると書かれています。
先に、自分流のOptunaの使い方の流れを説明すると、
 1.スコア(値が小さいほど良いスコア)を返す関数を作る
 2.optuna.create_studyクラスのインスタンスにその関数を渡す
という風になります。
実際に、
$$(x-2)^{2}$$
とい

元記事を表示

AtCoder Beginner Contest 157 参戦記

# AtCoder Beginner Contest 157 参戦記

## ABC157A – Duplex Printing

1分で突破. 書くだけ.

“`python
N = int(input())

print((N + 1) // 2)
“`

## ABC157B – Bingo

7分半で突破. 書くだけ……ではあるけど、エレガントに書こうと思えばどう書けばいいんですかね……. 特にビンゴ判定のところ.

“`python
A = [list(map(int, input().split())) for _ in range(3)]
N = int(input())

for _ in range(N):
b = int(input())
for y in range(3):
for x in range(3):
if A[y][x] == b:
A[y][x] = -1

for y in range(3):
f = True
for x in range

元記事を表示

【初心者】Python、FlaskとHerokuで、ニャンコつぶやきフォームを作った

#FlaskとHerokuを使って、簡単な投稿フォームを作った。
#(1)アウトプットイメージ
以下のような簡単な投稿フォームを作成することをゴールとした。
スクリーンショット 2020-03-01 21.23.24.png
つぶやく内容に”にゃー にゃー”、つぶやいたネコに”たま”を入力し、送信ボタンを押すと、
スクリーンショット 2020-03-01 21.25.01.png
こんな感じで投稿される。

#(2)仮想環境を設定
desktop

元記事を表示

pythonのpikaで色々なrabbimqの機能を使用する

# はじめに
前回の[pythonでrabbimqを扱う](https://qiita.com/mink0212/items/8d692e17b34793655c66)ではRabbitMqで単純なメッセージのやり取りを行いましたが、RabbitMqは色々な機能があるため今回はその色々な機能と使用方法をまとめます。

# 環境
– python:3.6.5
– イメージ:rabbitmq:3-management

# キューの確認設定
標準のpikaの設定ではRabbitMq内に送受信したいキューが存在しないときは自動的にキューを作成しますが、自動的にキューを作成せずにエラーしたい場合があります。その場合は、チャンネルの“` queue_declare() “`関数のpassive引数にTrueを与えるとキューがないときはエラーします。

## シチュエーション例
プロデューサー側で全てのキューを管理して、コンシューマー側では純粋に接続のみ許したいときなど。

## passiveをtrueにしたプロデューサー
前回の例として作成したプロデューサーの“` channel.q

元記事を表示

にじさんじで学ぶPythonプログラミング入門【カルロスピノ氏リスペクト】

こんにちは。タケシです。
インフラエンジニアとして働きながら、スキルの幅を広げるためにプログラミングを学んでいます。

Progateなどの教材で学習するだけでは興味がそそられず、いかにもお勉強って感じでやる気が出なかったのですが、初学者でも楽しく無料でプログラミングが学べそうな動画を先日見つけました。

[![IMAGE ALT TEXT HERE](https://i4.ytimg.com/vi/w0lKVhcnhkE/hqdefault.jpg)](https://youtu.be/w0lKVhcnhkE)
[ホロライブで学ぶPython入門~15分でYoutubeの情報取得までやる編~](https://youtu.be/w0lKVhcnhkE)

この動画では投稿主の**カルロスピノ氏**が、プログラミング初心者向けに**PythonでYoutubeの動画情報取得**をする方法を解説しています。

ブラウザ(Chrome)でPythonのコードを実行するので面倒な環境構築も不要ですし、お金もかかりません。

この記事ではカルロスピノ氏の動画を見た視聴者(私)が、動画内で紹介さ

元記事を表示

OTHERカテゴリの最新記事