茨の道も一歩から

40代後半の田舎住まい無職。再就職先が決まるまでの茨の道を記録します。

入門

SQL入門:学習用サンプルデータベース(world)

サンプルデータベース(World) Example Databases ダウンロード セットアップ手順 world.sql.zip zipファイルを展開 c:\temp\配下など インストール mysql> SOURCE c:\temp\world.sql 実行結果 Query OK, 1 row affected (0.00 sec) : mysql> 確認 mysql> S…

SQL入門:文字操作

REPLACE SELECT REPLACE('test', 't', 'T'); 出力結果 +---------------------------+ | REPLACE('test', 't', 'T') | +---------------------------+ | TesT | +---------------------------+ 1 row in set (0.00 sec) SUBSTRING SELECT SUBSTRING('MySQL8'…

SQL入門:テーブル操作

テーブルのコピー CREATE TABLE meats_tmp SELECT * FROM meats; NULL値を平均値に置き換える SELECT *, COALESCE( price, (SELECT SUM(price)/COUNT(*) FROM meats_tmp) ) AS price FROM meats_tmp; price=0ならNULLを返す SELECT NULLIF(price, 0) FROM me…

Python入門:Python3.9新機能

マージ(|)と更新(|=) d1 = {'A': 'a', 'B': 'b', 'C': 'c'} d2 = {'B': 'bb', 'C': 'cc', 'D': 'dd'} d1 | d2 # {'A': 'a', 'B': 'bb', 'C': 'cc', 'D': 'dd'} print(d1) # {'A': 'a', 'B': 'b', 'C': 'c'} d2 | d1 # {'B': 'b', 'C': 'c', 'D': 'dd', 'A': …

Python入門:スクレイピング事始め

はじめに Pythonでスクレイピングの仕方を備忘録。 スクレイピング禁止のサイトもあるので注意が必要。 準備 以下の環境を構築 Google Chrome Google Chrome WebDriver chromedriver 解凍した、chromedriver.exeを以下のフォルダ構成で保存 【フォルダ構成】…

Python入門:モジュール(その2)

Module その2 module_aa.py def run(): print('run: Module_AA.') module_bb.py def run(): print('run: Module_BB.') module_header.py import module_aa import module_bb main2.py from module_header import * module_aa.run() module_bb.run() 実行結果…

Python入門:モジュール

Module ユーザ権限のパッケージインストール先を確認 import site site.getusersitepackages() Pythonの実行パス import sys sys.executable カレントディレクトリのパス追加 import os import sys sys.path.append(os.curdir) import module_a パス調査(Pat…

Python入門:例外処理

例外処理 def divide(x, y): try: return x / y except ZeroDivisionError as e: raise ValueError('Invalid inputs.') from e x, y = 5, 2 try: result = divide(x, y) except ValueError: print('Invalid inputs.') else: print('Result is %.1f' % result)

Python入門:関数

関数 基本的な関数 def add(a, b): return a + b 位置引数 add(1, 2) 3 キーワード引数 add(1, b=2) 3 add(a=1, b=2) 3 add(b=2, a=1) 3 デフォルト値 def add(a, b=4): return a + b add(1) 5 デフォルト値NG def append(item, _list=[]): _list.append(ite…

Python入門:ファイル操作

pathlib from pathlib import Path ファイル一覧取得 base_dir = Path('public/') files = [file for file in base_dir.glob('*.csv')] ファイルの読み書き 7.2. ファイルを読み書きする モード モード 説明 既存ファイル無 既存ファイル有 'r' ファイルの読…

Django入門:Django REST Framework

Django REST framework pipアップデート python -m pip install -U pip python -m pip install -U setuptools インストール pip install djangorestframework pip list Package Version ------------------- ------- asgiref 3.2.10 Django 3.1.1 djangorest…

Django入門:Blogアプリの制作 - データベース

はじめに PythonのWebアプリケーションフレームワークである、Djangoでの開発スキルを習得するハンズオンです。 モデルの作成 blog\models.py from django.conf import settings from django.db import models from django.utils import timezone # Create y…

Django入門:Blogアプリの制作

はじめに PythonのWebアプリケーションフレームワークである、Djangoでの開発スキルを習得するハンズオンです。 Blogアプリの作成 cd djpj python manage.py startapp blog ルートとビューの作成 ビューの作成 paramsの定義 ルートの作成 views.py from djan…

GitHub入門:SSH接続の手順

はじめに DeployKeyを登録しようとすると、Key is already in useとエラーになる。 同じ公開鍵は登録できないので、SSHとGITの設定変更で対処。 GitHub GitHub リポジトリ作成 リポジトリを作成する SSH鍵の生成 TeraTermなどでSSH鍵を生成 .sshフォルダ id_…

Django入門:Contactアプリの制作

はじめに PythonのWebアプリケーションフレームワークである、Djangoでの開発スキルを習得するハンズオンです。 Contactアプリの作成 cd djpj python manage.py startapp contact フォームの作成 フォーム(contact\forms.py)の作成 forms.py from django imp…

Django入門:Corporateアプリの制作

はじめに PythonのWebアプリケーションフレームワークである、Djangoでの開発スキルを習得するハンズオンです。 Corporateアプリの作成 cd djpj python manage.py startapp corporate ルートとビューの作成 ビュー(corporate\views.py)の編集 views.py from …

Python入門:Tkinter事始め

はじめに tkinterの使い方を調べた備忘録です。 経緯 簡単なHello Worldプログラムが簡単ではなかったので...。 少しずつ理解していきたい。 a-simple-hello-world-program.py import tkinter as tk class Application(tk.Frame): def __init__(self, master…

Django入門:LPの制作

はじめに PythonのWebアプリケーションフレームワークである、Djangoでの開発スキルを習得するハンズオンです。 LPアプリの作成 cd djpj python manage.py startapp lp ルートとビューの作成 ビュー(lp\views.py)の編集 views.py from django.shortcuts impo…

Django入門:HelloWorldアプリの制作

はじめに PythonのWebアプリケーションフレームワークである、Djangoでの開発スキルを習得するハンズオンです。 Helloアプリの作成 cd djpj python manage.py startapp hello ルートとビューの作成 ビューの作成 ルートの作成 hello/views.py from django.sh…

Django入門:Django開発環境の構築

はじめに PythonのWebアプリケーションフレームワークである、Djangoでの開発スキルを習得するハンズオンです。 開発環境 Windows10 Home Python3.8.5 Django3.1 Pythonのインストール 以下の公式サイトからダウンロードしてインストールします。 Python www…

Python入門:ソート

ソート 逆文字列 'This is a example.'[::-1] '.elpmaxe a si sihT' sorted関数 sorted(iterable[, key][, reverse]) odds = [1, 5, 3, 9, 7] sorted(odds) [1, 3, 5, 7, 9] sorted(odds, reverse=True) [9, 7, 5, 3, 1] #### 複数キーで1項目で昇順、同値が…

Python入門:Pythonの仮想環境とパッケージ on Windows

はじめに 詳しく知りたい人は、公式のチュートリアルへどうぞ。 Python3自体のインストールは済んでいる前提です。 venvで仮想環境の構築 仮想環境の構築 C:\pystudy>python -m venv myenv 有効化 C:\pystudy>myenv\Scripts\activate.bat pipのバージョンが…

Python入門:制御構文 while

while count = 0 while count <= 10: print(count) count += 1

Python入門:制御構文 for

range for i in range(5): print(f'{i} times.') 0 times. 1 times. 2 times. 3 times. 4 times. リスト items = ['apple', 'banana', 'orange'] for item in items: print(item) apple banana orange 辞書 items = [ {'name': 'apple', 'plice': '150'}, {'…

Python入門:制御構文 if

True? False? A = [1, "1", True, -1, 0, 0.0, 0j, None, "", False, {}, [], (), [[]]] result = [x for x in A if x] print(result) # [1, '1', True, -1, [[]]] if~elif~else a = 2 if a == 0: print(f'a is zero: {a}') elif a == 1: print(f'a is one…

Python入門:辞書

Dictionaries D ={} D['name'] = 'Bob' D['age'] = 24 print(D) # {'name': 'Bob', 'age': 24} key指定 D['name'] # {'name': 'Bob'} key一覧 D.keys() # ['name', 'age'] keyの存在確認 'age' in D # True 値一覧 D.values() # [24, 'Bob'] key削除 del D['…

Python入門:タプル

Tuple tuple0 = () # () tuple1 = tuple() # () tuple2 = 0, '1', 2, [3], -4 print(tuple2) # (0, '1', 2, [3], -4) print(tuple2[1]) # '1' 要素がひとつのタプル one_tuple = 'one', # 最後に "," をつける count t = ('a', 'b', 'c', 'a') t.count('a') …

Python入門:リスト

List list1 = ['aaa', 'bbb', 'ccc', 100, 1234] 追加 append list1.append('ddd') # ['aaa', 'bbb', 'ccc', 100, 1234, 'ddd'] insert list1.insert(1,'eee') # ['aaa', 'eee', 'bbb', 'ccc', 100, 1234, 'ddd'] extend list2 = ['xxx', 'yyy'] list2.exten…

Python入門:文字列

文字列 単一引用符(')でも二重引用符(")でも良い ただし、三重引用符(""")で文字列を囲む場合は二重引用符を用いる str1 = "abc" str2 = 'def' ##### 改行を含む str3 = """ghi jkl mno""" str4 = '%s xxx' % str1 #abc xxx str5 = '%s %s' % (str1, str2) #…

Python入門:数値

数値 切り上げ a = 17 b = 3 (a+b-1) // b # 6 import math math.ceil(1.2) #2 切り捨て import math math.floor(1.2) #1 小数点以下n桁目で四捨五入 round(3.14159, 3) # 3.142 round(1251, -2) # 1300 浮動小数点演算、その問題と制限 round(1250, -2) # 1…