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

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

sqlalchemy

“`py
import sqlalchemy
import sqlalchemy.ext.declarative
import sqlalchemy.orm

#sqliteでメモリ上にデータベースを作成
#engine = sqlalchemy.create_engine(‘sqlite:///:memory:’, echo=True)

#sqlite
#engine = sqlalchemy.create_engine(‘sqlite:///:test_sqlite2.db’, echo=True)

#mysql
engine = sqlalchemy.create_engine(‘mysql+pymysql://root:@localhost/test_mysql_database2’)

Base = sqlalchemy.ext.declarative.declarative_base()

class Person(Base):
__tablename__ = ‘persons’
id = sqlalchemy.Column(
sqla

元記事を表示

PyPDF2?いやPyMuPDFでしょ

# PyPDF2だと読み書きのときにエラーをはかれる。
“`
(, PdfReadError(‘Illeagal character in Name Object’,)

元記事を表示

Jupyter Notebook の横幅をブラウザいっぱいにする

Jupyter Notebook の横幅をブラウザいっぱいにする小技です。

“`
~/.jupyter/custom/custom.css
“`

に下記を加えます。

“`css
@media (min-width: 768px) {
.container {
width: 98%;
}
}
@media (min-width: 992px) {
.container {
width: 98%;
}
}
@media (min-width: 1200px) {
.container {
width: 98%;
}
}
“`

このようにすると、…/site-packages/notebook/static/style/style.min.css に書かれているピクセル指定の幅設定を上書きできるようです。

変更後に、Jupyter の server を再起動する必要がある点に注意です。

元記事を表示

Python Tips

#docstring
三重クオート( ”’ や “”” )で囲まれた行。コメントアウトされる。

元記事を表示

言語処理100本ノック-46:動詞の格フレーム情報の抽出

[言語処理100本ノック 2015](http://www.cl.ecei.tohoku.ac.jp/nlp100/)[「第5章: 係り受け解析」](http://www.cl.ecei.tohoku.ac.jp/nlp100/#ch5)の[46本目「動詞の格フレーム情報の抽出」](http://www.cl.ecei.tohoku.ac.jp/nlp100/#sec46)記録です。
前回は格として助詞だけを出力しましたが、今度は文節(各フレーム)も併せて出力します。当然ながらさらに面倒に・・・

# 参考リンク

|リンク|備考|
|:–|:–|
|[046.動詞の格フレーム情報の抽出.ipynb](https://github.com/YoheiFukuhara/nlp100/blob/master/05.%E4%BF%82%E3%82%8A%E5%8F%97%E3%81%91%E8%A7%A3%E6%9E%90/046.%E5%8B%95%E8%A9%9E%E3%81%AE%E6%A0%BC%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E6%83%

元記事を表示

urllibとbeautifulSoupでtwitterのツイート数,フォロー数,フォロワー数,いいね数,を取得する

以下の記事で紹介
1000字程度

http://www.minekawada.com/twitter-follower-num-beautifulSoup.html

##内容は以下の通り

フォロワー,フォロー,いいね,ツイート数を取得する目的
seleniumではなくurllibを使う理由
コード
結果

元記事を表示

【Django】Userモデルに使えるフィールド名・ユーザー登録・ログインの仕方

##はじめに
この記事はDjango初級者脱却を目指す筆者が同じく初心者の方に向けた勉強メモです。言葉選びや解釈に間違いの可能性があります。

##触れること
– Userモデルとは
– userの作り方
– ログイン/ログアウトの実装

## Userモデルとは
DjangoではUser管理用のデータベースがデフォルトで入っており、手間なく認証やユーザ管理を行うことが可能となっています。

Userモデルは以下のような継承関係にあり、以下に示すフィールド名を持ちます。
![Usermodel.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/392111/5b99e4a8-821e-a648-8727-ab125e3d7574.png)

※ちなみにこの図はこちらの本を参考にさせていただきました。

また、他のmodelオブジェクト同様にし

元記事を表示

CaDIS: a Cataract Datasetで画像セグメンテーション

# 1. はじめに
 本記事では入門向けとして、TensorFlow2.0を使用して、とりあえずDeep Learningでセマンティック・セグメンテーションを行うことを目標とします。画像データセットはDigital Surgery Ltd.により公開されている白内障手術セグメンテーションデータセット[^1]を使用します。また、ネットワークは[前回] (https://qiita.com/burokoron/items/8c011c219b7545c50355)使用した10層CNNをエンコーダとしたSegNet[^2]とします。

[すべてのコード](https://github.com/burokoron/StaDeep/tree/master/SegNet)

# 2. 環境
– PCスペック
– CPU: Intel Core i9-9900K
– RAM: 16GB
– GPU: NVIDIA GeForce GTX 1080 Ti
– ライブラリ
– Python: 3.7.4
– numpy: 1.16.5
– matplotlib: 3.1.1

元記事を表示

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で数独を画像から認識して解く

JupyterNotebookでAtcoderが捗るコーディング環境

## はじめに

皆さん、Atcoderやってますか??
私も面白そうだ!と思ってPythonではじめてみました。
ただ、いざコンテストでコード書くぞとなると

コンテストサイトのコードテストはページの移動がめんどくさいし・・・
PyCharmは気軽に・・・というにはちょっと重いし・・・

という、なんか丁度いいコーディング環境が見つからないなぁというお気持ちに。。
そしていろいろ試してみた中で、JupyterNotebookが丁度良さそうだ!っていうのを実感してきたので共有してみたいと思います!

## さっそく紹介

まず、そもそもJupyterNotebookが良い!完璧!
というのであれば、この記事はここで終わりで良いのですが

ひとつだけ、すごくAtCoderに向いてないところがあります。

それは「テストケースをうまく入力する手段がない」というところです!
input()で入力を受け取りたいのに、そんなの用意されてないので受け取れません。。

そこで!
「JupyterNotebookでAtCoderのテストケースを簡単に受け取る方法」をご紹介します。

では、ノートブ

元記事を表示

PythonのOCRで1文字の数字を認識する

※この記事は[Pythonで数独を解く](https://qiita.com/hatt_takumi/items/37a9c15b4e0ad2119ac6)、[Pythonで碁盤目を画像から認識する(数独)](https://qiita.com/hatt_takumi/items/47a46d5e85223a41afa4)の続きです
#PythonのOCRで1文字の数字を認識する
Pyhtonで数独を認識して解くために、複数のOCRをPythonで試してみた。
認識するのは白紙、または数字がひとつ書かれたpng画像81枚。
OCRは、
・scikit-learn
・Google CloudVisionAPI
・Tesseract
の三つを試してみた。

#認識する画像
今回認識にかけるのは数独の問題を切り取った以下の81枚の画像。
“img”というフォルダ内においてある。
![numbers.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/467051/4d65a733-9c94-5fa7-f96a-c8

元記事を表示

バリデーションについてのメモランダム

モデルのバリデーションについてあまりに忘れるので、最低限覚えておきたいことをまとめる。
この記事では、hold-out法やクロスバリデーションなど主なバリデーション手法と、時系列データの扱いにも少し触れる。
参考文献: [Kaggle本](https://www.amazon.co.jp/Kaggle%E3%81%A7%E5%8B%9D%E3%81%A4%E3%83%87%E3%83%BC%E3%82%BF%E5%88%86%E6%9E%90%E3%81%AE%E6%8A%80%E8%A1%93-%E9%96%80%E8%84%87-%E5%A4%A7%E8%BC%94/dp/4297108437/ref=sr_1_1_sspa?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&keywords=Kaggle%E3%81%A7%E5%8B%9D%E3%81%A4%E3%83%87%E3%83%BC%E3%82%BF%E5%88%86%E6%9E%90%E3%81%AE%E6%8A%80%E8%A1%93&qid=1583042364&sr=

元記事を表示

【備忘録】python+vscode+pipenvありがちだけどwarningとかめんどかったので備忘録

初投稿です。
今まではnotepad++を使ってコードを書いていたのですが色々便利ということでVScodeを使おうと思い立ちました。
pythonの勉強用なのですが、せっかくならpipenvとか使って管理しやすいようにしたいなーと思って環境を作ってました。
しかしwarningが消えなかったり色々苦戦したので、備忘録的にここに残しておこうと思います。

今回構築する環境は以下になります。
-OS:windows10
-Python:3.8
-使用ライブラリ:pipenv、Django

#1.VScodeのインストール
以下ページから自分の環境にあったものをインストールしてください。
https://code.visualstudio.com/download

#2.pythonのインストール
以下ページから環境に沿った欲しいバージョンのものをダウンロードしてインストールしてください。
https://www.python.org/downloads/windows/
また、windowsの場合途中に環境変数を追加するチェックボックスがあるはずなので、忘れずにチェックをいれてください

元記事を表示

OpenJtalkを使って日本語をRaspberry Piに喋らせる

#この記事でできること
・OpenJtalkのRaspberry Piにインストール
・実際に”こんにちは”を音声出力
#動作環境
・Raspberry P i3 model B
・OS: Raspbian
#前提
・ラズパイのssh接続で操作できる or ディスプレイで操作可能
・日本語入力が可能
#OpenJtalkのインストール
自分は、[この記事](https://qiita.com/Higemal/items/6dde8637a680bfe200ca)を参考にしてインストールしました。

まずは、以下を実行します

“`
sudo apt-get update #アップデートする
sudo apt-get install open-jtalk #インストール
“`
次に推奨されているパッケージもインストールします。

“`
sudo apt-get install open-jtalk-mecab-naist-jdic hts-voice-nitech-jp-atr503-m00
“`

##テスト
これでもう音声出力はできます!
OpenJtalkは日本語の音声フ

元記事を表示

オレオレデザインパターン:Glocal Variable

## 概要

Pythonのライブラリでたまに見る、「withの中でのみアクセスできるグローバル変数」という設計パターンに、オレオレの名前をつけてまとめてみた。

すでに名前がついてたらすいません。

## 例題

ある設定に基づき実験(関数`experiment`)を行うプログラムを書く。

実験は複数の関数(`first` `second`)に分割して記述されており、どちらも設定を参照してある実験操作を行う。

`config0`と`config1`に基づき二回実験を行いたい。

ストレートに書くとこう。

“`python
# 本当はもっといろいろ設定がある
config0 = {
“id”: 0
}

config1 = {
“id”: 1
}

def first(conf):
# なんかする
print(f”{conf[‘id’]}: first”)

def second(conf):
# なんかする
print(f”{conf[‘id’]}: second”)

def experiment(conf):

元記事を表示

再帰表現メモ

## ユークリッド互除法
修正:2020.3.5

普通の書き方

“`python:main.py
def euclid_algolithm_1(a, b):
while True:
r = a % b
if r == 0:
return b
a, b = b, r
“`

再帰表現で書く

“`python:main.py
def euclid_algolithm_2(a, b):
r = a % b
if r == 0:
return b
return euclid_algorithm_2(b, r)
“`

元記事を表示

PythonとRubyのインスタントメソッド文法(勉強中)

今回はPythonとRubyの勉強として、
インスタンスメソッドの文法を比較してみたいと思います。
インスタンスメソッドはオブジェクト指向の基本的な内容で、
様々な言語で比較してみたいと考えております。

今回の用いるPythonとRubyは下記バージョンで実施しております。
Python: 3.7.4
Ruby: 2.6.3
## Pythonでの例

“`python:test.py

class Test:
def __init__(self):
print(‘勉強中’)
“`

## Rubyでの例
“`ruby:test.rb
class Test
def initialize
puts(‘勉強中’)
end
end
“`

比較のすると「:」や「end」の有無などが違うかなという印象です。

随時更新させていただきます。

元記事を表示

dockerでpythonを使う

“`
docker pull python
docker run –name python -i -t python /bin/bash
“`

参考

Windows 10 にDockerをいれてPythonを実行して、その勢いでCloudFormation一発でECS上でも実行してみた


https://qiita.com/chroju/items/ce9cae248cc016745c66

元記事を表示

OTHERカテゴリの最新記事