自動化無しに生活無し

WEBとかAIとかLinux関係をひたすら書く備忘録系ブログ

  • 【Django】OneToOneFieldでつながっているデータの取得方法【モデル名を小文字にした属性名で取得できる】

    OneToOneFieldを使う機会は限定されているので、備忘録として。 タイトルから既に(?)な状態かも知れないが、まずは、下記モデルを見てもらいたい。 # 店舗データテーブル class StoreData(models.Model): class Meta: unique_together = ("store","date") store = models.ForeignKey(Store,verbose_name="店舗",on_delete=models.CASCADE) date = models.DateField(verbose_n ...
  • Javascriptで自由にHTMLを操作する、DOMについて

    DOMとは? DOMとはDocumentObjectModelの略で、HTMLドキュメントを自由に操作する仕組みのことを言う。 DOMによりWEBページとプログラミング言語をつなぐことができる。 参照元: https://eng-entrance.com/what-is-dom 早い話、JavaScriptはDOMを使うことで、HTMLを自由に操作することができるというわけだ。 特定の要素の内容を書き換えてみよう <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Hello World test!!</title> </head> <body> <div id="test&quo ...
  • 【Docker】公式チュートリアルを起動して使い方を学ぶ【docker run --name tutorial -d -p 80:80 docker/getting-started】

    dockerをインストールしたものの、使う機会に恵まれない、そもそも運用難易度高すぎで未だにVirtualBoxを使っている。 そういう状況なので、docker公式のチュートリアルを動かすことにした。 公式のチュートリアルを起動する 以下コマンドでOK docker run --name tutorial -d -p 80:80 docker/getting-started コマンドの意味は以下の通り docker [作成+実行] [コンテナ名はtutorialとする] [バックエンドで起動] [ポートは80番(PC側で80番へア ...
  • Ubuntuにreactをインストールして動作確認する

    Ubuntu20.04にインストールしている npmのインストール sudo apt install npm reactのインストール sudo npm -g install create-react-app バージョンの確認 create-react-app --version プロジェクトを作り、開発用サーバーを起動する create-react-app myproject プロジェクトを作る。 cd myproject npm start 開発用サーバーを起動すると自動的にブラウザが立ち上がる。127.0.0.1:3000が表示される。 src/App.jsを下記のように修正するとHelloWorldが表示される。 import React from 'react'; const App = () => { return ...
  • Reactに必要なJavaScript構文【ES2015(ES6)のテンプレート文字列、アロー関数、スプレッド構文、letとconstなど、脱jQueryにも有効】

    Reactに必要なJavaScript構文をまとめる Reactを使わない場合でも、JavaScriptをシンプル書くヒントがあるので、コードを小さくしたい場合にも有効。 脱jQueryを推進したい人は下記も参考に。 jQueryのコードをJavascriptに書き換える【セレクタ、属性値の参照、イベントなど】 letとconst letとconstはいずれも再宣言が不可能。 let test = "aaa"; //これはエラー //let test = "bbb"; ...
  • 【Pandas】DataFrameをループして取り出す【列ごと、行ごとに取り出すにはdf.items()とdf.itertuples()でOK】

    よくあるpandasの行ごと、列ごとにデータを取り出す方法。 環境 Python 3.8.10 numpy==1.23.4 pandas==1.5.1 python-dateutil==2.8.2 pytz==2022.5 six==1.16.0 列ごとにループして取り出す .iteritems()は後のバージョンで廃止される可能性があるので、列ごとのループには.items()を使う import pandas as pd data = {} data["month"] = [ str(i)+"月" for i in range(1,13) ] data["page_view"] = [ i*1000 for i in range(12) ] data["earnings"] = [ i*100 for i in range(12) ] index = [ str(i) for i in range(12) ] df = pd.DataFrame( data, index=index ) ## 列ごとにループする for column_name, item in df.items(): print(column_name) print(item) print(item["0"]) print(item["1"]) print(item["2"]) index ...
  • 【Python】正規表現モジュールreでパターンに一致した文字列を全て取り出す・全て置換する

    正規表現は普段から使っていないと、いざという時にどうなってたっけってなる。 だから備忘録としてまとめておく。 とりわけ、Pythonの正規表現モジュールreのメソッドはいろいろあるので、実用的な物に絞っておく。 全て取り出す 返り値はリスト型で出る。 import re target = "n1o2a3u4t5o-6n7o8li9f0e9.com" #数値を取り出す result = re.findall(r'\d', target) if result: print(result) #取り出した数値を連結する。 print("".join(result)) else: print("マッチなし") 全て置換する import re target = "n1o2a3u4t5o-6n7o8li9f0e9.com" print(target) #数値を置換す ...
  • なぜUbuntuを使うのか?WindowsやMacにはない〇〇がある

    仕事でUbuntuを使っていると、よくこんな意見を耳にする 『なんでWindowsじゃないの?』 『なんでこんな使いにくいの使ってんの?』 『かっこつけているだけじゃないの?』 なので、それに対しての理由をこの記事にまとめてみた。 ちなみに、私がUbuntuを使い始めたのは2012年。Ubuntu 10.04の時代からである。 【理由1】コマンド一発で全て揃うから 例えば、Pythonの開発環境を整える時、次のコ ...
  • 【Django】パスコンバータ(URLに含まれた引数)を使って個別ページを表示させる

    40分Djangoを終えた方向け。 投稿したTopicの編集や削除、Topicに対してコメントの投稿をする時、予め個別ページを作っておく必要がある。 本記事ではパスコンバータを使って個別ページの作り方を解説する パスコンバータの仕組み Djangoにおいて、urls.pyにて定めた<型:引数名>は実行するビューにて呼び出しができるようになっている。 bbs/urls.py まず、bbsアプリ内のurls.pyにて、こ ...
  • WindowsでPythonをインストールする

    Pythonのインストール Pythonのインストーラーを配布しているサイト( https://www.python.org/downloads/ )へ行く。 Download Python 3.10.6 の部分をクリックする。インストーラーがDLされる。 ( ※下記画像の赤枠部分。3.10.6は2022年9月現在のバージョンであり、今後バージョンが更新される。最新版のPythonインストーラーをDLする。 ) ダウンロードフォルダにて、先ほどDLしたインストーラーのファイルがあるので、ダブルクリックしてPytho ...