Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
Merry Christmas🎄 この記事は Pythonista Advent Calendar 2017 の24日目の記事です。 iPhoneとAWSだけでマイクロサービスを作るための忘備録です。スクショの解説多めに作ります。 イブにあまり人気のないカレンダーを書いていて余計に寂しい感じもしますが、頑張ります。 前置き 自分の身の周りに存在する小さな問題を解決するのに、Pythonistaは非常に役立ちます。 ここまで完成度の高いアプリがあれば、iPhoneだけでサービスを提供できるのでは?と言う疑問も湧きます。 iOSには映画撮影で使われたアプリ、イラストレーターが仕事で使うアプリ、DTMで使えるアプリなど、 プロ目線で見てコンテンツを作成するのに十分な機能を持つアプリが既にあるのに、 iPhoneだけでプログラミングされたプロダクトを今までに聞いたことがありません。 幸いPyth
概要 おそ松のセリフをランダムに返すLINE BOTを作ります。 環境はDjango+Heroku。細かいトラップを回避しながら頑張って作ります。 友だち追加 あまり会話は成立しないです (セリフをランダムに返すだけなので) 当然ですが非公式です ソースコード 開発環境 Mac OS X 10.11.6 python 2.7.11 Django 1.10.3 おおまかな手順 1. LINE Messaging API登録 2. Djangoインストール 3. Djangoプロジェクト作成+動作確認 4. Djangoでbotアプリケーション作成+動作確認 5. おそ松のセリフをランダムで返す部分を作成 6. Herokuにデプロイ 7. LINE側にHerokuのアドレスをセット 8. 会話してみる 詳細な手順 0. 前提 python, pipはインストール済み Herokuアカウント作
対象の読者 普段Pythonをお使いの方。 特に単体テストコードを書く機会がある方。 Python標準のUnitTestフレームワークを使う機会のある方。 概要 単体テストをする際、1つのテストケースの中で、パラメータを変えて複数回対象をAssertすることがあります。 普通に実装すると、1パターン失敗した時点で、残りのパターンがテストされず、テストは終了してしまいます。 Subtestを用いると、途中で失敗するパターンがあっても、テストを最後まで実行し、成否をパターン毎に個別に出力してくれるようになります。 前提条件 この記事の内容はPython 3.5系で検証したものです。 それ以前のバージョンだと想定通り動かないかもしれません。 テスト対象例 あるメソッドやクラスのテストをする場合、大抵の場合、テスト対象が取りうる入力、状態ないし結果を網羅するように、パラメータを変えてテストをするか
最近とある理由でClojureに触りました。 8年近くCやPythonなどの手続き型言語を使ってきた者にとって,最初は「関数型言語」に戸惑いもありましたが,一方で,Pythonが関数型言語の良い点をたくさん取り入れていることにも気づきました。 そこで,Pythonでどこまで関数型言語ライクなことができるか,Clojureのサンプルを参考ししつつ試していきたいと思います。 今回はayato-pさんが公開されている「Clojure の日本語ガイド」の イディオム集 の内容をPythonで実装してみます。 手元のPythonのバージョンは3.6.1です。 複数のコレクションの要素を index ごとにまとめる
この記事は Retty Advent Calendar 2017 24日目です. 昨日は@udoooom さんの 「カワイイはつくれる」 でした. Rettyのサーバサイドエンジニア兼魚料理担当のnakagawa(@shinyorke)ともうします. 好きな魚料理は「青魚の南蛮漬け」1,趣味は野球のデータ分析です.2 気がつけばRetty Advent Calendar 2017三回目の登場です,今日もPythonのハナシで吟じます,よろしくお願いします テーマ「Pythonでのバックエンド開発」 一言で言うと, Pythonでバックエンド(バッチ処理)をオールインワンで作った時のノウハウとなります. 他社様のサービスとデータ連携する基盤をPython + Docker + AWS ECSで作った&運用している(今年から) Pythonライブラリ(Jupyter notebook, req
この記事は、LIFULL Advent Calendar 2017の2日目の記事です。 おはようございます。新UX開発部の二宮( @ninomiyt )です。 LIFULLではデータ解析や最適化の用途、もしくはAWS Lambda上の簡易ツール実装用途などでPythonがそれなりに普及してきました。数値計算寄りの(いわゆるデータサイエンティスト的な)メンバーも今はPythonを使うことが多く、コード量としては小規模なプロジェクトが多く、簡単なAPIやバッチ処理の実装までやってもらうこともあります。 そのレビューをやっていく中で、「これ使うともっと簡単に実装できるよね」っていうライブラリがいくつかまとまってきたので紹介します。 click コマンドラインパーサー用のライブラリで、デコレータを使って関数を簡単にCLI化できます。 標準ライブラリのargparseがありますが、clickではバリ
はじめに Web上で長期間の株価データを探してもなかなか見つからないので,Pythonを用いて株価のヒストリカルデータを取得し,CSV形式で出力,さらに出力したデータをプロットするプログラムを作成しました. 日本株・外国株いずれにも対応しています. 参考までに,例として出力した日経平均株価1のCSVファイルはこちら,さらにプロットすると以下のようになります. ソースコードの紹介 まず,作成したソースコードを紹介します. #!/usr/bin/env python3 # -*- coding:utf-8 -*- ''' 株価データのプロット・CSVへの出力 ''' import datetime as dt from pandas import DataFrame import jsm import pandas_datareader.data as web import matplotli
Pythonで日時を扱うライブラリーについて、逆引き風にまとめてみました。 この記事の内容は、正確を期するように注意して記述していますが、公式の情報ではありません。 正確な情報をお求めなら公式リファレンス(参考資料#1)を参照してください。 想定する読者 ほとんどが標準モジュールについてのことですので、Python初心者の方か、日時ライブラリーのことをあまりご存じない方向けです。 (私自身まだPython歴が浅いので。) 前提 Python2はv2.7.10、Python3はv3.5.1で確認しています。 (Anaconda 4.0.0 Windows 64bit版を使用。) Python2とPython3を特に個別に扱っていないものは、共通で使えるものです。 その場合、printについてはカッコつき表記で統一し、実行結果はPython3のものを採用しています。 サンプルコードは、主に対話
自分で小さいツールを作る時に心に留めているtipsです. 書き始めたときは「どうせ書捨てだし」と思って書き始めると意外と長い間,もしくはいろんなところで使うことになったりするので,気をつけておくと後から楽になるというような小技です.大規模なソフトウェアの開発ではまた違った流儀があると思います. メインルーチンを関数にする 関数名はなんでもいいのですが,自分は趣味で main() という名前の関数を用意し,メインルーチンは全てそこに書くようにしています. pythonの小さなサンプルコードを見たりすると関数外の部分にベタで実行コードが書かれていたりします.もちろんそれでも動くのですが,以下の2点で後々面倒になることがあります. グローバル変数だらけになり管理が追いつかなくなる:「どうせ小さなスクリプトだし」ではじめると最初は見通しが良くてもだんだんどこでどの変数名を使っているか分からなくなっ
はじめに 自分用メモです、経緯は下記。 前回作成したようなBottleアプリケーションをローカルでなくインターネット上で動かしてみたかった。 今更ながらHerokuを使ってみたかった。 ローカル環境を構築せずに開発ができるというCloud9の存在を知って、使ってみたかった。 前提条件とか Cloud9, heroku, GitHubのアカウントは作成済み Pythonはバージョン3.5.1を使う やったこと 【Cloud9】ワークスペースの作成 https://c9.io/new Choose a templateでPythonを指定してCreate workspace 【Cloud9】Pythonのバージョンアップ Cloud9のデフォルトだとPythonのバージョンはPython2系なので、Python3.5.1を利用するよう変更しておく。 画面下部の緑色の+ボタンを押して[New T
こちらを参考にさせていただきました。 質問 Cloud9を利用してPythonを学習しているところですが、Pythonのバージョンを2.7から3.xに変更しようと思い、PROJECT SETTINGSのLanguage SupportでPython VersionをPytyon3に変更しても、Python -Vで確認すると2.7.6と表示されます。他に何か必要な手順があるかどうかご教示ください 回答 PROJECT SETTINGS を変更する方法はわかりませんが、terminal で変更するのであれば 以下でできました。 python コマンドは which python とすると /usr/bin/python にあることがわかります。 ls -l /usr/bin/python でこれがシンボリックリンクになっていることがわかります。 このシンボリックリンクの実体を変更することで他の
Cloud9で開発したdjangoプロジェクトをherokuで公開 プロローグ 前回の記事でherokuを少し使ってみました。 あれから3ヶ月,Rの経験値も上がってきましたが,今回はRではなくPythonを使ったお話です。 Rはパッケージも多く,昨年は書籍もたくさん出ましたし,最近はTokyoRを通じて知りあったRガチ勢の皆様が四六時中参加しているslackもあって,とても便利なのですが,基本的に統計処理を念頭に作られたものということもあり,データの前処理ではawkを使ったりしていました。しかしawkは会社のWindows7(32bit)環境で使うにはいろいろ面倒です。 そこで実は2015年夏くらいから情報収集を始め,Python関連の勉強会にもいろいろ参加してました(あとjuliaも)。 みんなのPython勉強会StartPythonClub(#StaPy) Pythonもくもく会@ア
概要 現在の日付を$T$とすると、$T+1$から$T+30$までにおける日次価格の単純移動平均をDeepLearningを使って予測し、 ロングポジションを持った(もしくはショート)時の価格より、予測した移動平均を上(下)回れば利益確定するようなシミュレーション売買を行いました。また、30日保持したら強制的に手仕舞いするようにします。 エントリーは日時毎に残高があれば全力で行うようにします。 ※オレンジのラインが30日後の30日単純移動平均になります。緑がx軸の日付時点における為替価格です。 使用したDLフレームワーク chainer ver1.3~1.5 ちょうどver1.5で互換性が大幅に変更になって、対応するのが大変でした。 2017/8現在はver2.0.2になっているみたいですね。 使用データ みずほヒストリカルデータ https://www.mizuhobank.co.jp/r
TL;DR Jupyter Notebookがアツい! RubyとかElixirも動かしてみたい! Dockerコンテナで動かせば楽! Docker ToolboxだけでOK! Pythonの知識なくても環境構築できる RubyやElixirの知識がなくてもJupyter Notebook上でそれらの言語が扱える Jupyter Notebookについて Jupyter Notebookがキテる!という話は色々なところでなされているため本稿では省略する: Jupyterがすごい勢いでやってくるからお前ら備えとけ(IPython Notebook + R) - Qiita Railsエンジニアに役立つJupyter NotebookとiRuby - クックパッド開発者ブログ 現代のエンジニアのための強力なメモ帳 Jupyter notebookのすゝめ - クックパッド開発者ブログ このJu
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く