タグ: python

  • Django勉強会を開催しました

    Django勉強会を開催しました

    台風10号の心配がありましたが、当日の午後には晴れの予報に変わったので予定通り開催できました。

    https://pyehime.connpass.com/event/326007

    pyehimeとしては久々のイベントで(長年放置していてすみません)x.comとehimeitのslackからの告知程度でしたが、非エンジニアの方や学生さんを含め多くの方の参加がありました。

    イベントの内容については、当初はそれぞれ課題を持ち込んでもらってもくもく勉強会の形で考えていたのですが、参加者みなさんにそれなりの成果物を持ち帰ってもらうことも必要と思い、日記サイトのお題を用意したところ、全員がお題に取り組んでくれました。

    (さらに…)
  • PyEhime 20181020 – MkDocs

    ターミナル(シェル環境)

    $ env | grep LANG
    何も設定されていない場合は、
    $ export LANG=ja_JP.UTF-8
    としておく。
    

    Python3環境

    venvをお勧めします。作業用フォルダを workspace とすると、

    $ cd workspace
    $ python3 -m venv venv
    $ source venv/bin/activate
    

    mkdocs インストール

    $ pip install mkdocs
    pip 自体のアップグレードが勧められたら、
    $ pip install --upgrade pip
    

    mkdocsのプロジェクト作成

    $ mkdocs new mktest
    

    ビルド

    $ cd mktest
    $ mkdocs serve
    

    ブラウザで http://127.0.0.1:8000 を開く。

    カスタマイズ

    いろいろ記事がありますので、適宜試してみてください。
    MkDocsによるドキュメント作成
    練習で数式を試してみました。
    https://kazweda.github.io/mkdocs-lesson/math/

    GitHub Pages

    GitHubでリポジトリを作成。mktest
    git clone の URL(PATH/TO/REPO)を取得

    $ git init
    $ git remote add origin (PATH/TO/REPO)
    $ git pull origin master
    $ mkdocs gh-deploy
    
  • Visual Studio Codeを使ってみる – macOS

    Get Started Tutorialにそって進めてみる

    Getting Started with Python

    Python環境の確認

    Python 3.0 Release
    パッケージをインストール

    $ which python3
    /Library/Frameworks/Python.framework/Versions/3.6/bin/python3
    $ python3 --version
    Python 3.6.5
    

    Visual Studio Code インストール

    Visual Studio Code

    python3 -m venv

    $ cd Hello
    $ python3 -m venv venv
    

    Running VS Code on macOS

    $ cat << EOF >> ~/.bash_profile
    # Add Visual Studio Code (code)
    export PATH="\$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"
    EOF
    

    VSCodeを起動

    $ code .
    

    VSCode起動

    Configure Python Environment

    Configuring Python environments

    Command + Shift + P
    Python: Select Interpreter

    ./venv/bin/python
    

    Python3.6.5(venv)

    早速コードを書き始めると linter(pylint)のインストールを促される。
    そのままインストール。

    Successfully installed astroid-1.6.3 isort-4.3.4 lazy-object-proxy-1.3.1 mccabe-0.6.1 pylint-1.8.4 six-1.11.0 wrapt-1.10.11
    You are using pip version 9.0.3, however version 10.0.0 is available.
    You should consider upgrading via the 'pip install --upgrade pip' command.
    

    pipのアップデート
    最後のメッセージにしたがって、

    $ pip install --upgrade pip
    

    ひとまずの環境が整ったようなので動かしてみる。

    hello.pyを追加(編集)

    print('Hello World!!')
    

    VSCodeのterminalから

    $ source venv/bin/activate
    $ python hello.py
    

    Unit Testing

    Unit testing Python in VS Code
    Command + Shift + P
    で Command Pallete を開いて Unit と入力。
    Command Pallete

    Python: Run All Unit Tests
    

    を選択すると、画面右下に次の表示。
    Enable and configure a Test Framework

    青いボタンをクリックしてテスト環境の設定を進める。
    unittest

    テストコードをtestフォルダにまとめたいので test を選択。
    (testフォルダがなければ作成しておく。
    test folder

    testから始まるファイルをテストコードの対象に。
    test*.py

    出来上がった .vscode/settings.json

    ではコードを書いていきます。

    test/testCalc.py

    calc.py

    ステータスバーの [Run Tests] をクリックして [Run All Unit Tests] を実行。
    OUTPUT の Python Test Log に OK が表示されればOK。
    ただし、テストの2回目以降に、

    OK
    Unhandled exception in thread started by

    のような例外が発生する模様。
    しばらく様子をみます。

    [追記:2018.06.09]

    VS Code 1.24.0 にバージョンアップしたら上記の例外が出なくなりました。

  • PyEhimeもくもく勉強会を開催しました

    イベントページはこちら

    今回のみなさんの課題は、

    • Djangoチュートリアル
    • 機械学習 – オンライン講座
    • 環境構築 – VirtualBox

    このような感じでした。

    私自身は、前回(昨年12月)のもくもく会の際に、

    環境構築はそれぞれ勉強なり準備するとして、成果物を簡単に共有できた方が良い。

    のような議論があって、そのときにあがった Cloud9 を使ってDjangoチュートリアルを進めました。

    事前に Cloud9 でDjangoプロジェクトを作ってある程度進めていたので、
    はじめての Django アプリ作成、その 6
    はじめての Django アプリ作成、その 7
    このあたりを中心に試してみました。
    テンプレートのカスタマイズや管理サイトの機能追加など、実際にコードを書いてブラウザで確認することでDjangoの雰囲気がつかめて来た気がします。

    さて、次回ですが、まだ具体的な時期とかは決めていませんが、流行の機械学習を一緒に学んでみようと思っています。

    06.12追記
    もくもく会の後半で少し議論させていただいた教育関係のクラウド導入の件で、まとまった資料が公開されていたので参考まで。↓
    総務省 – 「教育ICTの新しいスタイル クラウド導入ガイドブック2016」の公表

  • PyEhimeもくもく勉強会

    PyEhimeもくもく勉強会

    前回の開催から少し間が空きましたが、2回目のもくもく勉強会を開催しました。

    PyEhime もくもく勉強会

    都合により、今回も急遽の開催となってしまいました。十分な告知ができずすみません。
    次回は、会場の手配を含めてもう少し余裕を持って準備しようと思いますので、ご理解・ご協力をお願いします。

    前回はPyEhimeの初めての自主開催ということもあって、とりあえず集まっての意見交換程度でしたが、今回は少し足並みを揃えて、cloud9でdjangoを動かしてみるというところまではできました。
    ちなみに、私は今回の勉強会のために、事前にvagrantでローカルの開発環境を用意して、準備万端のつもりだったのですが、現地で起動してみるとホストOSからアクセスできない状態。あとで調べて、CentOS(vagrant box)のネットワークインターフェースの問題ということがわかりました。この辺りも、まだまだ経験不足です。
    それと、当日、私が風邪気味で頭がぼんやりしていてあまり手を動かすことができませんでした。いろいろ失礼しました。

    さて、このような感じで、cloud9というクラウド上の開発環境を一つのノウハウとして共有することができましたので、このあたりをベースにして勉強会を継続できればと思っています。
    ただし、具体的な目的や目標がないと、どうしても時間を無駄にしてしまいますので、何か一冊、本を選ぶなどして効率よく学ぶことも考えてみます。
    まだまだぎこちないですが、まったりとやっていますので、pythonプログラミングにご興味のある方はお気軽にご参加ください。
    適宜、ハッシュタグ #pyehime でおしらせします。

    それとPyCon JP参加者交流用のSlackがあります。そちらのehimeチャネルで日常のやり取りをしていますので、よかったらどうぞ。

  • Django on vagrant の環境構築の補足 – Python3

    pyvenv の pip を更新(9.0.1)して、
    $ pip list
    とすると、

    DEPRECATION: The default format will switch to columns in the future. You can use –format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.

    という警告が表示されたので、
    https://pip.pypa.io/en/stable/user_guide/#configuration
    こちらを参考に、
    (pyvenv)/pip.conf
    を作成。

    [list]
    format=columns

    次に、開発用の簡易Webサーバを起動して、ブラウザで開くと、

    DisallowedHost at / …

    のような警告が表示されたので、
    https://docs.djangoproject.com/en/1.10/topics/settings/
    こちらを参考に、
    (project)/settings.pyを編集して、

    ALLOWED_HOSTS = [ '192.168.33.xx' ]

    を追加。

    追記(2016/12/12)
    モデル定義を編集してmigrateしたところでWARINGSが表示された。

    WARNINGS:
    ?: (mysql.W002) MySQL Strict Mode is not set for database connection ‘default’
    HINT: MySQL’s Strict Mode fixes many data integrity problems in MySQL, such as data truncation upon insertion, by escalating warnings into errors. It is strongly recommended you activate it. See: https://docs.djangoproject.com/en/1.10/ref/databases/#mysql-sql-mode

    https://docs.djangoproject.com/en/1.10/ref/databases/#mysql-sql-mode
    http://django-mysql.readthedocs.io/en/latest/checks.html#django-mysql-w001-strict-mode
    このあたりを読んで、settings.pyのDATABASESにオプションを追加。

    'OPTIONS': {
        'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
    },
  • PyEhimeもくもく勉強会

    7月末にPython Boot Camp in 愛媛(初心者向けチュートリアル)を開催したあとで、Slackでやり取りをしていまして、その中で各々勉強したい課題が幾つか見えてきましたので、今後の愛媛でのPythonコミュニティの活動をどうしていくかという作戦会議を兼ねてもくもく勉強会を開催しました。

    開催に向けて日程調整をしたところ、connpassでイベントを公開したのが開催の2日前という、急遽の開催となってしまいました。
    告知期間が短くてすみません。今後の愛媛での開催に向けての準備ということでご理解いいただければ幸いです。
    また、急な開催にもかかわらず4名の方にご参加いただきました。お忙しい中ありがとうございます。

    会場に利用させていただいたカフェですが、Wi-Fi環境はフリーなものがいろいろ使えます。ただし6人掛けのテーブル席まわりでは電源は取れませんでした。4人掛けのエリアにはいくつかあるそうです。

    開催中の様子。

    PyEhimeもくもく勉強会
    PyEhimeもくもく勉強会

    さて、開催の中身ですが、

    • vagrant + python3 + django
    • python programming on Android
    • urllib + BeautiflSoupによるスクレイピング
    • eclipseのDjango開発環境
    • cloud9でDjango
    • 次回は11月中旬以降?
    • それぞれ興味のあるライブラリを試してみて教えあう
    • もう少しDjangoを使って参加者のレベルを近づける
    • などなど…

    のような感じでした。
    あと、Google Driveでのファイル共有、appear.inでの画面共有なども行いました。

    始めたばかりで右往左往の状態ですが、無理のない範囲で継続していきたいと思います。
    Pythonプログラミングにご興味のある方がいらっしゃいましたらお気軽にご参加ください。

  • Python Boot Camp in 愛媛

    2016年7月30日にサイボウズ株式会社松山オフィス様にてPython Boot Camp in 愛媛を開催しました。

    詳しくはこちら。
    Python Boot Camp in 愛媛 を開催しました!!

    当日のTwitterのまとめ
    Python Boot Camp in 愛媛まとめ(togetter)

    次回は熊本にて開催されます。
    Python Boot Camp in 熊本
    Python Boot Camp in 熊本 懇親会
    この機会にぜひご参加ください。