Djangoのインストール

PythonプログラムでWEBを開発するフレームワークであるDjangoを今日インストールした。これからはDjangoプロジェクトをPyCharmで開発していく。

テストプログラムによる結果表示
テストプログラムによる結果表示
ターミナルの実行結果(ログ)
ターミナルの実行結果(ログ)
Django等インストール後のパッケージ一覧
Django等インストール後のパッケージ一覧
FlaskとDjangoのモジュール一覧
FlaskとDjangoのモジュール一覧
↑人気ブログランキングに参加しています。ポチっと1票を!

寝床から失礼!

寝床から失礼いたします。

Hey Siri

Hey Siri で電話もかけてみました。ちゃんとかかりました。

下の画像は後からPCにて編集後挿入しました。

やっと35,000にカウントがなりました。1日4,500という日もあったんですが。
やっと35,000にカウントがなりました。1日4,500という日もあったんですが。
↑人気ブログランキングに参加しています。ポチっと1票を!

全てiPhoneで処理いたしました。

iPhoneカーソル移動の練習

6月26日カーソル移動の練習
どんなことをしゃべったのかまたどんなふうに感じるのか?
この文章の内でカーソル移動の練習をするとなると大変難しいような文章もカーソル移動のための文章だとするとやっていて張り合いがない。(とりとめのない文章で済みません!)
例えば上の3行目の大変難しいと言う語を削除してみる。
→カーソルの打ち方の練習→ここ。
①カーソル位置を設定するには画面をながおしする。→ここの左にカーソルを持っていく練習をする。
②カーソルを入れたい場所にオレンジの縦バーを挿入する。
③だんだん要領がわかってきた。

↑人気ブログランキングに参加しています。ポチっと1票を!

iPhone内でGmailの送受信を行う

iPhone内でGmailの送受信を行う
① iPhoneの待ち受け画面でGmailのアイコンをタップ。
②画面の+マークをタップでメールの新規作成。
③宛先にsとhを入力自分自身とスマホのメールにメールを送信。
④件名と本文を音声入力する。
⑤添付または添付する写真の画像を撮り。
⑥画面上のほうのヤジリマークをタップメール本体が送信される。
⑦Gmailとスマホにメールが送られる。
⑧iPhone内の写真やスナップショットは従来通りメモデーターの中で行う。
上記操作によりスマホ上でGmail操作が完結する。
※ → iPhoneに登録されている写真や文章は添付できません。添付できるのはPC上のデータのみです。

今までGmailのハンドリングはPCのみで行ってきた。それがiPhoneでもできるようになり、ブログが簡単にアップできるようになった。凄い進歩である。ただし添付資料はiPhone内でやっているにもかかわらず、PC側の資料だけしかかなわない。iPhone内のものは今まで通りの操作が必要となる。

↑人気ブログランキングに参加しています。ポチっと1票を!

アイデアマシーン

生産性が上がること間違いなしである。

iPhoneでアイデアマシーンを作ろうと思っている。
Appはメモを使おうと思っている。
1段ではあるがフォルダも作れる。
そこに自分で思いついた事柄をアイキャッチ画像で作ったフォルダに記事にして書こうと思っている。
入力にはiPhoneの「Siri」を使う。
音声認識入力である。
生産性が上がること間違いなしである。

乞うご期待!

↑人気ブログランキングに参加しています。ポチっと1票を!

USB取り忘れメッセージ2

USBがさしっぱなしです( ゚Д゚)
お茶をこぼしても知らないぞ( ´∀`)
席にもういないダーッΣΣ(゚Д゚;)

これはかつて掲載した記事の再掲です。上のメッセージをUSBが残っているとき「お知らせ」として表示します。

#USBログオフ時メッセージプロンプト処理
#メッセージ文
$messagePath="C:\tabc\message.txt"
#ログ出力パス
$usbLOG="C:\tabc\ccc\usblogx.txt"
 
#--------------------------------------
#メッセージボックス
#--------------------------------------
function MessageBox([string]$p_value = "")
{
    [Void][Windows.Forms.MessageBox]::Show($p_value,"お知らせ","OK", "Warning")
}
 
 
$crUSB = Get-WmiObject -Class win32_usbhub | ? { $_.name -eq "USB 大容量記憶装置" } | ? { $_.status -eq  "OK" }
 
 
if ($crUSB) {
    write-output "$env:computername,$env:username,$(get-date)" >> $usbLOG
 
    #Windowsフォームのロード
    [Void][Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms");
 
    MessageBox $([String]::Join("`r`n", (Get-Content $messagePath)))
    
}
USB取り忘れ防止Log
USB取り忘れ防止Log

文字が小さく見ずらい時はWindows拡大鏡をお使いください。Windows・キー + 「+」(プラス・キー)(Windows・キーはキーボード左下、左から3~4番目のキー。抜けるにはWindows・キー + 「ESCキー」を押します)
Enlighterのコードは窓の右上アイコンの「<>」を押すと明るい表示になります。

↑人気ブログランキングに参加しています。ポチっと1票を!

Enlighterの注意書き

Windows・キー + 「+」(プラス・キー)(Windows・キーはキーボード左下、左から3~4番目のキー。抜けるにはWindows・キー + 「ESCキー」を押します)

文字が小さく見ずらい時はWindows拡大鏡をお使いください。Windows・キー + 「+」(プラス・キー)(Windows・キーはキーボード左下、左から3~4番目のキー。抜けるにはWindows・キー + 「ESCキー」を押します)
Enlighterのコードは窓の右上アイコンの「<>」を押すと明るい表示になります。

↑人気ブログランキングに参加しています。ポチっと1票を!

クラスとインヘリタンス

2019年5月22日の記事の再掲

今、PythonのProgrammingを思い出している。これは2019/5/22付の記事の再掲である。これらはオブジェクト・オリエンティッドのプログラムの必須機能である。内容は同記事を参照してください。

class Pet(object):
    def __init__(self, name, size):
        self.name = name
        self.size = size
    def petcall(self):
        print("Cannot burk")
    def run(self):
        print("running")
class Dog(Pet):
    def petcall(self):
        print("Bow wow")
    def run(self):
        print("running")
class Cat(Pet):
    def swim(self):
        print("cannot swimming")
    def petcall(self):
        print("Mew")
    def run(self):
        print("running")
class Turtle(Pet):
    def __init__(self, name, size, color):
        self.name = name
        self.size = size
        self.color = color
    def run(self):
        print("Just walking")

gardenPet = Pet("Mary", 160)
gardenPet.petcall()
gardenPet.run()
houseDog = Dog("John", 40)
houseDog.petcall()
houseDog.run()
nekoTheCat = Cat("Neko", 35)
nekoTheCat.swim()
nekoTheCat.petcall()
nekoTheCat.run()
tinyTheTurtle = Turtle("tiny", 10, "green")
print(tinyTheTurtle.color)
tinyTheTurtle.petcall()
tinyTheTurtle.run()

上のCode画面の右上隅の左から2番目のアイコン(コピー)をクリックし、ご自分の何らかのエディタにペイストすればPython Programが編集可能となります。

文字が小さく見ずらい時はWindows拡大鏡をお使いください。Windows・キー + 「+」(プラス・キー)(Windows・キーはキーボード左下、左から3~4番目のキー。抜けるにはWindows・キー + 「ESCキー」を押します)
Enlighterのコードは窓の右上アイコンの「<>」を押すと明るい表示になります。

↑人気ブログランキングに参加しています。ポチっと1票を!

Python Prog.の復習

最初は「N Queens problem」のコードである。

##!/usr/bin/env python3
# Modified this program by S.K on 2020/04/26
"""
N queens problem.

The (well-known) problem is due to Niklaus Wirth.

This solution is inspired by Dijkstra (Structured Programming).  It is
a classic recursive backtracking approach.
"""

N = 8                                   # Default; command line overrides

class Queens:

    def __init__(self, n=N):
        self.n = n
        self.reset()

    def reset(self):
        n = self.n
        self.y = [None] * n             # Where is the queen in column x
        self.row = [0] * n              # Is row[y] safe?
        self.up = [0] * (2*n-1)         # Is upward diagonal[x-y] safe?
        self.down = [0] * (2*n-1)       # Is downward diagonal[x+y] safe?
        self.nfound = 0                 # Instrumentation

    def solve(self, x=0):               # Recursive solver
        for y in range(self.n):
            if self.safe(x, y):
                self.place(x, y)
                if x+1 == self.n:
                    self.display()
                else:
                    self.solve(x+1)
                self.remove(x, y)

    def safe(self, x, y):
        return not self.row[y] and not self.up[x-y] and not self.down[x+y]

    def place(self, x, y):
        self.y[x] = y
        self.row[y] = 1
        self.up[x-y] = 1
        self.down[x+y] = 1

    def remove(self, x, y):
        self.y[x] = None
        self.row[y] = 0
        self.up[x-y] = 0
        self.down[x+y] = 0

    silent = 0                          # If true, count solutions only

    def display(self):
        self.nfound = self.nfound + 1
        if self.silent:
            return
        print('+-' + '--'*self.n + '+')
        for y in range(self.n-1, -1, -1):
            print('|', end=' ')
            for x in range(self.n):
                if self.y[x] == y:
                    print("Q", end=' ')
                else:
                    print(".", end=' ')
            print('|')
        print('+-' + '--'*self.n + '+')

def main():
    import sys
    silent = 0
    n = N
    if sys.argv[1:2] == ['-n']:
        silent = 1
        del sys.argv[1]
    if sys.argv[1:]:
        n = int(sys.argv[1])
    q = Queens(n)
    q.silent = silent
    q.solve()
    print("Found", q.nfound, "solutions.")

if __name__ == "__main__":
    main()


文字が小さく見ずらい時はWindows拡大鏡をお使いください。Windows・キー + 「+」(プラス・キー)(Windows・キーはキーボード左下、左から3~4番目のキー。抜けるにはWindows・キー + 「ESCキー」を押します)
Enlighterのコードは窓の右上アイコンの「<>」を押すと明るい表示になります。

N = 12 の時
N = 12 の時
N = 4 の時
N = 4 の時

だいぶ時間が空いた、もうPythonのプログラミングも忘れてしまった。徐々に思い出していこう。最初は「N Queens problem」のコードである。かの構造化プログラミングで有名なダイクストラの解である。

↑人気ブログランキングに参加しています。ポチっと1票を!

Enlighter version up

Code画面右上のアイコン「<>」をクリックすると背景の色が変わります。

例えば記事でEnlighterのcodeがあるが黒表示されている。これを今まで通りに明るい表示にするには、右側の上隅のアイコン「<>」をクリックすればよい。

#!/usr/bin/python3
# -*- coding: utf-8 -*-
#demo32.py session managed &amp; username get
from flask import Flask, redirect, request, render_template, url_for, session
 
app = Flask(__name__)
 
@app.route('/login', methods=['GET', 'POST'])
def login():
    if request.method == 'POST':
        session['username'] = request.form['username']
        return redirect(url_for('index'))
    return render_template('demo07.html')
 
@app.route('/program', methods=['GET', 'POST'])
def program():
    if request.method == 'POST':
        session['username'] = request.form['username']
        return redirect(url_for('index'))
    return render_template('demo03.html')
 
@app.route('/program1', methods=['GET', 'POST'])
def program1():
    if request.method == 'POST':
        session['username'] = request.form['username']
        return redirect(url_for('index'))
    return render_template('demo04.html')
 
@app.route('/program2', methods=['GET', 'POST'])
def program2():
    if request.method == 'POST':
        session['username'] = request.form['username']
        return redirect(url_for('index'))
    return render_template('demo05.html')
 
@app.route('/param/&lt;parameter>')
def show_user_profile(parameter):
    if 'username' in session:
        html = render_template('demo07.html',name = str(parameter))        
        return html
    return 'You are not logged in. from param processing'
 
@app.route('/reset', methods=['GET', 'POST'])
def reset():
    session['username'] = 'monkey'
    return render_template('check31.html')
 
@app.route('/')
def func():
    if 'username' in session:
        html = render_template('demo07.html',name = str(session['username']))        
        return html
    return 'You are not logged in'
 
@app.route('/check', methods=['GET', 'POST'])
def check():
    if request.method == 'POST':
        session['username'] = request.form['username']
        return redirect(url_for('func'))
    return render_template('check31.html')
 
@app.route('/',methods=['POST'])
def index():
 
    if (request.form['attr'] == 'need'):
 
        success = False
        name = request.form["username"]
        passwd = request.form["pass"]
        att1 = request.form['attr']
        my_message = "keyword処理は?"
    else:
        con1 = request.arg.get('_ControlID')
        pg1 = int(request.arg.get('_PageID'))
        act1 = request.arg.get('_ActionID')
        flg1 = request.arg.get('getFlg')
        html = render_template('demo07.html', con = con1, pg = str(pg1), act = act1, flg = flg1)        
        return html
 
    user_data = [{"id":"カリフラワー", "pass":"hanakyabetsu"},{"id":"西行法師", "pass":"masako"},{"id":"monkey", "pass":"kayochan"},{"id":"program1", "pass":"pass1"}]
 
    for i in range(0, 10):
        if user_data[i]["id"] == name:
            if user_data[i]["pass"] == passwd:
                success = True
                session['username'] = name
                return render_template('demo07.html',suc=success,name=name,pas=passwd,msg=my_message,att=att1)
            else:
                continue
        else:
            continue
    success = False
    return render_template('demo07.html',suc=success,name=name,pas=passwd,msg=my_message,att=att1)
 
@app.route('/logout')
def logout():
    session.pop('username', None)
    return redirect(url_for('func'))
 
app.secret_key = 'B0Qp89i/2xY F~XHH!jnVVLWX/,%QR'
 
if __name__ == '__main__':
    app.run(debug=True)

文字が小さく見ずらい時はWindows拡大鏡をお使いください。Windows・キー + 「+」(プラス・キー)(Windows・キーはキーボード左下、左から3~4番目のキー。抜けるにはWindows・キー + 「ESCキー」を押します)
Enlighterのコードは窓の右上アイコンの「<>」を押すと明るい表示になります。

↑人気ブログランキングに参加しています。ポチっと1票を!