匠のためのpython

pythonを使って、簡単なIoTやsmartfactoryについて試行錯誤していきま…

匠のためのpython

pythonを使って、簡単なIoTやsmartfactoryについて試行錯誤していきます。

記事一覧

blender ちょっとCGの話もする

投稿サボってました。でも、勉強をサボっていたわけではありません!!思いついたサービスで3DCGをやりたかったので、勉強してました。プログラミングというか、コンピュー…

Three.js cameraのパラメータが変更になったら必ず呼べ!!

Three.jsネタぐらいしか書くことがない。今はアプリ開発に関しては、成熟のフェーズです。 さて、いきなりなんですけど、Threejsネタです。どっかでThreejsに関しては体系…

Javascript CORS Errorを防ぐためには

Three.jsの勉強をしているときに躓いたので、備忘もかねて。 Three.jsはWebGLを簡単に使えるようにするライブラリで、3Dを扱ってなると、テクスチャの画像をJavaScript上…

css position: fixedって、どんな時に使うの?

Three.jsをやっています。3D表現の勉強が楽しくて、私はどこに向かっているのでしょうか? さて、3Dとは本質的に関係ないかもしれませんが、「position: fixed」のcssを使…

python autopepで楽々コーディング

vscodeの拡張機能の説明なんで、純粋なpythonの話ではないのかもしれません。 pythonのコーディング規約としてpepというものが存在しているのは、pythonを多少嗜んだ人な…

django get_user_model()

早くアプリ作りたいなぁと気持ちばかりが急きますが、なんかもう年末気分でまったりしてます。 フロントエンドは変化が目に見えるからか、理解が早いがやはりバックエンド…

python やっとわかった例外処理

いまさら感がありますが、やっと例外処理のやり方がわかってきました。 tyr: 処理except エラー名: 例外発生時の処理 だと思いますが、私このエラー名のところに特…

python 超絶基本のopen関数

webサービスを作る気力を振るいたたせるために、かなり基本的なところを振り返り始めてます。リハビリ。 さて、アプリでcsvを読み込ませたいところがあるんですが、そこで…

JavaScript [...Array(n).keys()] はやめた方がいいのでは?

という記事を見つけました。見つけたきっかけは [...Array(2000).keys()]; こうゆうコードを見つけたからなんですけど。 これって、ぱっと見て何してるかわかりずらいで…

BeautifulSoup decomposeで不要な要素を削除

欲しいデータがあって、スクレイピングしているんですが、文字列を抽出する際にspanタグ内にある文字が邪魔でいらいらしていました。 こうゆう時には、decomposeメソッド…

Django get_user_model()-vs-settings.AUTH_USER_MODEL

どちらもユーザーモデルをカスタムした際に使用するものですが、どう使い分けるかわからなかったため、調べました。 結論からいうと、get_user_model()はモデルそのものを…

Django 複数フィールドにユニーク制約(複合ユニーク)をつける方法

ここでは二つの方法を紹介します。二つ紹介する理由としては、片方はいままで主流だったけども、これから使えなくなる可能性があるためです。 以下のようにclass Metaの中…

Django Userモデルの復習

Djangoに関して研鑽を怠ってきたので、久しぶりに。 Userモデルはデフォルトのものを使うなっていうのは、公式サイトの見解です。だったら最初から作らなきゃよかったじゃ…

Javascript ボイラープレートとは何ぞや?

別にカテゴリーとしては、Javascriptではないんだろうけど、Reactを勉強している時には出てきた言葉だったので、このくくりにしてしまいました。 ボイラープレートコード …

django 多言語対応のためのgettext_lazy

端的にいうとgettextとgettext_lazyは、多言語対応するために使用されている関数です。 そこらへんは、以下のような感じでインポートされるんでわかるんですけど、 from …

React memoってすげー

いよいよ本格的にReactを使うと思って、基本的なところは勉強しおわって、ステップアップの口座を見てるんですけど、HTMLで再レンダリングって、変数の値などが変わらない…

blender ちょっとCGの話もする

blender ちょっとCGの話もする

投稿サボってました。でも、勉強をサボっていたわけではありません!!思いついたサービスで3DCGをやりたかったので、勉強してました。プログラミングというか、コンピュータサイエンスも沼ですが、3DCGも沼です。やばいです。

特に今はblenderを触ってます。無料です。好きです。

さて、これからはblenderについても書いていこうと思います。

blenderで細かい作業をするときに、マウスのホ

もっとみる
Three.js cameraのパラメータが変更になったら必ず呼べ!!

Three.js cameraのパラメータが変更になったら必ず呼べ!!

Three.jsネタぐらいしか書くことがない。今はアプリ開発に関しては、成熟のフェーズです。

さて、いきなりなんですけど、Threejsネタです。どっかでThreejsに関しては体系的にまとめたい。なんといっても、このライブラリに関しては、まとまってる日本語のコンテンツ少なすぎます。

表題の件ですが、cameraのパラメータを変更した際に、必ず呼びださなくてはいけないものとして、updateP

もっとみる
Javascript CORS Errorを防ぐためには

Javascript CORS Errorを防ぐためには

Three.jsの勉強をしているときに躓いたので、備忘もかねて。

Three.jsはWebGLを簡単に使えるようにするライブラリで、3Dを扱ってなると、テクスチャの画像をJavaScript上に読み込ませるんですが、ブラウザでhtmlを開くと、CORS Errorがでてファイルを読み込んでくれません。

そのため、対策としてローカルサーバーを立ち上げる必要があるのですが、VS codeのLive

もっとみる
css position: fixedって、どんな時に使うの?

css position: fixedって、どんな時に使うの?

Three.jsをやっています。3D表現の勉強が楽しくて、私はどこに向かっているのでしょうか?

さて、3Dとは本質的に関係ないかもしれませんが、「position: fixed」のcssを使う場面があったので、

まぁ、使い方は単純で、「これは画面の決まった位置に要素を固定させたいときに使います。」

これで終わりなんですけど、使用例を一つ。

スクロールしても、メニューが画面上部に固定されてい

もっとみる
python autopepで楽々コーディング

python autopepで楽々コーディング

vscodeの拡張機能の説明なんで、純粋なpythonの話ではないのかもしれません。

pythonのコーディング規約としてpepというものが存在しているのは、pythonを多少嗜んだ人ならご存じのことかと思います。別にコードとしては動くんだけど、可読性が低いと舐められる、というかあとあと見直したときになんじゃこりゃっていうことになるので、できるだけコーディング規約は守るようにしましょう。

ただ

もっとみる
django get_user_model()

django get_user_model()

早くアプリ作りたいなぁと気持ちばかりが急きますが、なんかもう年末気分でまったりしてます。

フロントエンドは変化が目に見えるからか、理解が早いがやはりバックエンドはデータベースの動きとか目に見えない部分の話だから結構難しい。

本日はdjangoの話

get_user_model( )では、現時点で有効になっているUserモデル自体を呼び出してくれます。つまり、AUTH_USER_MODELにC

もっとみる
python やっとわかった例外処理

python やっとわかった例外処理

いまさら感がありますが、やっと例外処理のやり方がわかってきました。

tyr: 処理except エラー名: 例外発生時の処理

だと思いますが、私このエラー名のところに特定のエラーを指定するっていうのを見落としてました。

そのため、エラーが発生したらただちに例外発生時の処理が実行されると勘違いしてました。

おっちょこちょい

ただ、すべてのエラーを補足するための方法もあって、エラ

もっとみる
python 超絶基本のopen関数

python 超絶基本のopen関数

webサービスを作る気力を振るいたたせるために、かなり基本的なところを振り返り始めてます。リハビリ。

さて、アプリでcsvを読み込ませたいところがあるんですが、そこで使うopen関数のオプションで気になったので調べてみました。

'w' 書き込み用に開き、既存ファイルがある場合は上書き
'a' 書き込み用に開き、既存ファイルがある場合は末尾に追記
'x' 書き込み用に開き、既存ファイルがある場合

もっとみる
JavaScript [...Array(n).keys()] はやめた方がいいのでは?

JavaScript [...Array(n).keys()] はやめた方がいいのでは?

という記事を見つけました。見つけたきっかけは

[...Array(2000).keys()];

こうゆうコードを見つけたからなんですけど。

これって、ぱっと見て何してるかわかりずらいですよね。

これは、n-1までの整数が順番に並んだ配列を得る記法で、まぁまぁメジャーな手法らしいんですけど、わかりずらいですよねっていう主張です。

確かにわかりずらい。

じゃあ、代わりの方法はといえば、

もっとみる
BeautifulSoup decomposeで不要な要素を削除

BeautifulSoup decomposeで不要な要素を削除

欲しいデータがあって、スクレイピングしているんですが、文字列を抽出する際にspanタグ内にある文字が邪魔でいらいらしていました。

こうゆう時には、decomposeメソッドを使用します。

decomposeメソッドを使えば指定したタグを削除できます。

気を付けるべきなのは、decomposeメソッドはインスタンスそのものを削除します

こんな感じで使います。

target = soup.s

もっとみる
Django get_user_model()-vs-settings.AUTH_USER_MODEL

Django get_user_model()-vs-settings.AUTH_USER_MODEL

どちらもユーザーモデルをカスタムした際に使用するものですが、どう使い分けるかわからなかったため、調べました。

結論からいうと、get_user_model()はモデルそのものを返すし、settings.AUTH_USER_MODELは文字列型で返すそうです。そのため、初期のDjangoでは、ForeignKeyなどに設定する場合は、settings.AUTH_USER_MODELを使用する必要が

もっとみる
Django 複数フィールドにユニーク制約(複合ユニーク)をつける方法

Django 複数フィールドにユニーク制約(複合ユニーク)をつける方法

ここでは二つの方法を紹介します。二つ紹介する理由としては、片方はいままで主流だったけども、これから使えなくなる可能性があるためです。

以下のようにclass Metaの中に書き込みます。

class Meta: constraints = [ models.UniqueConstraint( fields=["teacher", "s

もっとみる
Django Userモデルの復習

Django Userモデルの復習

Djangoに関して研鑽を怠ってきたので、久しぶりに。

Userモデルはデフォルトのものを使うなっていうのは、公式サイトの見解です。だったら最初から作らなきゃよかったじゃんと思うんですが。

これをいじるためには、settings.pyのAUTH_USER_MODELに設定する必要があります。

ここに文字列で、’アプリ名.モデル名’で設定できます。

Javascript ボイラープレートとは何ぞや?

Javascript ボイラープレートとは何ぞや?

別にカテゴリーとしては、Javascriptではないんだろうけど、Reactを勉強している時には出てきた言葉だったので、このくくりにしてしまいました。

ボイラープレートコード は、コンピュータプログラミングでは、殆ど、または全く変化することなく、複数の場所で繰り返される定型コードのセクションのこと。

なんだそうです。思いつくところでいうと、htmlのヘッダのところとかでしょうか?

用語として

もっとみる
django 多言語対応のためのgettext_lazy

django 多言語対応のためのgettext_lazy

端的にいうとgettextとgettext_lazyは、多言語対応するために使用されている関数です。

そこらへんは、以下のような感じでインポートされるんでわかるんですけど、

from django.utils.translation import gettext_lazy as _

なんで、「_」にしてるのかずっと気になってました。

その理由は、pythonの標準ジュールのgettextモ

もっとみる
React memoってすげー

React memoってすげー

いよいよ本格的にReactを使うと思って、基本的なところは勉強しおわって、ステップアップの口座を見てるんですけど、HTMLで再レンダリングって、変数の値などが変わらない限りいらない処理なんで、極力減らしたいじゃないですか?

そうゆうときに使えるのが、memoでこれを使ってコンポーネントを囲えば、propsの変更以外で再レンダリングするのをやめさせることができます。賢い~