ebiです。相変わらずWindowsを使って、Docker入門の続き(前回)やっていきます。 誰かのDocker入門の助けになるように、すんなり行ってる風に書いていきますけど、実際は色々と手出しては詰まって時間食い潰してました。 httpd イメージを動かしてみる Code School の Docker講座を覗いてみたら、作るだけで良い感じに Apache が起動してくれるイメージを使ってたので、まずはこいつを実機で動かしてみることにしました(もっと親切なイメージを使う話は後から)。 docker run する docker run -d -p 9999:80 httpd -dはデタッチドモードでコンテナを起動する、とのこと。詳しい説明はhelpコマンドやここらへんで。 -p 9999:80はポート番号の指定です。 左側がDockerホスト側のポート番号です。好きな番号を指定すればオッケ
音楽 プログラミング 言語 (7) データフロープログラミング言語とは何ですか? なぜそれを使用するのですか? そこに何か利点がありますか? 70年代には、効率的なデータフロープログラミングと実行のための言語+マシンさえありました( - >マンチェスターデータフローマシン)。 それについての素晴らしいことは、Haskellのような怠惰な関数型言語への二重性です。 したがって、処理ステップが純粋な機能であり、それらを評価して結果を渡すのに十分な処理ユニットがあれば、プログラミングの労力を必要とせずに、自動的に最大の並列性を無料で得ることができます。 Excel(および他のスプレッドシート)は基本的にデータフロー言語です。 データフロー言語は関数型プログラミング言語によく似ていますが、プログラムグラフ全体の葉の値は値ではなく変数(または値ストリーム)なので、変更するとグラフが波及して流れます。
The query parameter to QuerySet exists so that specialized query subclasses can reconstruct internal query state. The value of the parameter is an opaque ...
はじめに タイトルの通り、Djangoのクエリセットで「exists句」を使うにはどう書けばいいか?についての調査メモ。 Djangoにおけるクエリセットの条件指定 Djangoでクエリを発行するときは、Querysetオブジェクトに条件をパラメータとして指定する。 from django.db import models class Author(models.Model): class Meta : db_table = 'AUTHOR' name = models.CharField('著者名', max_length=100) birthday = models.DateField('生年月日') class Book(models.Model): class Meta : db_table = 'BOOK' name = models.CharField('書籍名', max_l
Django の Model (django.db.models.Model) のサブクラスとしてモデルを定義すると、 バックエンドのデータベースの操作を隠すことができます。 ここでは実際に、モデルの基礎 で作成したモデルを利用して、 Django のシェルからデータを操作しましょう。 from django.db import models class Company(models.Model): name = models.CharField(max_length = 200) website = models.URLField() def __str__(self): return self.name; class Employee(models.Model): company = models.ForeignKey(Company, on_delete=models.CASCADE
投稿者: kem / 右記内 Django / 投稿日:2016-11-14 ( 7 年, 7 ヶ月 ago) / 更新日:2017-05-06 ( 7 年, 1 ヶ月 ago) / コメント Django の model で、以下のようにfilterで条件指定してレコードを取得する際、 1件だけいい感じで取得するには、どうしたらいいのかわからず、 Google検索した結果を記載します。 ※[0]のようなインデックスのアクセスではなく、JPAのgetSingleResult() のように取得したかった。 # 戻り値はQuerySetで、結果があれば、1件目を取得するし、なければ、Null(None)扱いにしている。 f_artist_tmp = FestivalArtistTagTmp.objects.all().filter(tag_name=artist_string) if len(
前回はSELECT文まわりを試したので、今回はINSERT, UPDATEまわりを試してみます。 なお、ベースのアプリは前回のものを引き継ぎます。 目次 環境 複数データベース環境の用意 Database Routerの作成 settings.pyの設定 PostgreSQLの設定 DATABASE_ROUTERSの設定 Modelの追加 INSERT UPDATE filter()による条件指定での更新 update()による複数件の一括更新 SELECT or INSERT 発行されるSQLの確認 UPDATE or INSERT 発行されるSQLの確認 列の更新内容の指定 SELECT FOR UPDATE ソースコード その他 SQLのダンプ オブジェクトがiterableかどうか 環境 Windows7 x64 Python 3.4.3 Django 1.8.4 SQLite3
Djangoさわってて、「IS NULL」ってQuerysetでどうやるんだっけ、と思って調べたのでメモしておく 例えば以下のBookモデルがあるとして class City(models.Model): name = models.CharField(max_length=30) class Person(models.Model): hometown = models.ForeignKey(City) name = models.CharField(max_length=100) class Book(models.Model): author = models.ForeignKey(Person, null=True) title = models.CharField(max_length=100, null=True) titleがNullのBookを引っ張ってくる場合 Book.
仮の引数として*argsといれおけば、関数作成中に「引数をいくつ取るかまだ未定」なんていう時に argsがtupleのプレースホルダーとして入ってきた引数全てを引き取る役割を果たしてくれる。 def test_var_args_call(arg1, arg2, arg3): print ("arg1:", arg1) print ("arg2:", arg2) print ("arg3:", arg3) args = ("two", 3) test_var_args_call(1, *args) #result arg1: 1 arg2: two arg3: 3 先にargs変数を用意しておいて後から*argsでかぶせるイメージ。最初のparameter:1 はarg1として受け取り、残りは全てarg2とarg3の中に配置される。ちなみにこうやって最初に引数の数を指定して後から関数で入れて
Pythonを習い始めていろいろできるようになってくると,新しい機能は必要になったときに応じてネットで調べるようになってくるかと思います.その際に,必要としている機能以外の知識が前提としている場合があり,実はたいした知識ではないのに難しく感じてしまう,もしくは余計に調べることが多くなってドツボにはまってしまうことがあります.そのような知識の一つに「*arg」とか「**kwarg」というものがあります. ということで,今回はこの「*arg」と「**kwarg」について初心者向けの説明を試みます.内容としては,これらについて全く知らない人向けですね.簡単に言うと(自分を含む)初心者の方がビビらないようなお助け(という名目のメモ)です.堅苦しい説明は苦手なので,日本語での説明が多くなります. *arg, **kwargs って何の略語?“arg”は”argument”の略で,日本語では「(プログ
Pythonでは可変長の引数はこうやって受けます def hoge(*args, **kwargs): pass argsというlist tuple型の変数に、キーワード無しの引数が、kwargsというdict型の変数にキーワード付きの引数が入ります。 ※*argsはlist型だと思ってました、表示見たら違いますね。サーセン。直しときました。 名前は大体args, kwargs、って感じみたいです。他の名前でもOKだと思いますが。 実際にやってみると、こうなります。 >>> def hoge(*args, **kwargs): ... print args ... print kwargs ... >>> hoge(1, 2, 3, ['a', 'b', 'c'], name='my_name', data='100') (1, 2, 3, ['a', 'b', 'c'])
インターネットでPythonの資料を読んでいると関数の引数の記述で"*args"や"**kwargs"というものがありました。調べてみると2つの意味があるようです。 どんな引数にも対応できる関数 一つ目は関数定義に使用した場合、頭に"*"が付いた変数は、余った引数を受け取るタプルという意味になります。また"**"が付いた変数は、余ったキーワード引数を受け取り、辞書として機能します。 つまり、引数に(*args、**kwargs)を入れておけば、どんな引数でも受け取れることを意味しています。例えば、次のように #coding: shift-jis def func(*args, **kwargs): print "args=", args, print "kwargs=", kwargs print "func(1,\"ABC\",[1,2,3]):" func(1,"ABC",[1,2,3
Python初心者がサンプルコードを見て「何だこれ」とつまずきやすいのが、関数の引数の*argsと**kwargs。 関数定義で引数に*と**(1個または2個のアスタリスク)をつけると、呼び出し時に任意の数の引数(可変長引数)を指定できる。慣例として*args, **kwargsという名前が使われることが多いが、*と**が頭についていれば他の名前でも問題ない。以下のサンプルコードでは*args, **kwargsという名前を使う。
2016-01-16追記: 購入した当初は高いと思っていたサドルですが、座り方で多少改善されるようです。身長160cmの妻でも漕げています。 平日の家に帰ってご飯を食べてから寝るまでの時間はコードを書いていることが多いのですが、まったく運動しないことが気にかかっていました。 運動するためにジムに行くのは面倒だし、コードを書く時間を減らしたくはないので、運動しながらコードを書ける方法がないか考えていました。 そんなときに以下の記事を見て、運動しないとなぁと思っていると、「サイクリングデスク」という言葉が目に入りました。 「The Healthy Programmer」を読んで自宅を快適なプログラミング環境にする - 八発白中 オフィスでは1種類以上のイスを使うこと -- 普通のオフィスチェア、バランスボール、可動式のイス、さらに言えばサイクリングデスク サイクリングデスクってなんだ?と思って
プログラミング上達のための必須条件 運動と知能 How to be a better programmer? 2017.01.27 Updated by Ryo Shimizu on January 27, 2017, 08:11 am JST 秋葉原プログラミング教室もようやくプロジェクト発足から一年とちょっとが経ちました。 大勢の生徒さんを抱える中で、教員も増員して、益々盛り上がって来ました。 本来、開発会社がプログラミングを直接教えるというのは非効率的なので、合理的に考えればビジネスに成りえません。 けれども、大人向けのAIプログラミングコースと、子供向けのBASICコースの二本立てにすることで、どうにかビジネスの形になってきました。 また、昨年に引き続き第二回全国小中学生プログラミング大会の開催も決定し、近々発表させていただく予定です。 新しい目というのは面白く、新規に加わった教員
もともとUNIXの考え方は理解しているつもりでしたが、ちゃんと言語化されているものを読んだことがなかったので読んでみました。新しい発見があった箇所や非常に頷ける箇所をピックアップします。 UNIXという考え方―その設計思想と哲学 作者: Mike Gancarz,芳尾桂出版社/メーカー: オーム社発売日: 2001/02メディア: 単行本購入: 40人 クリック: 498回この商品を含むブログ (140件) を見る 定理3:できるだけ早く試作を作成する あらゆる試作の目的は、「第三のシステム」に早く到達することだ。 第一のシステム:数人で作られ、尖っていて小さく軽い 第二のシステム:委員会方式で作られ、多機能で大きくて重い 第三のシステム:専門家に作られ、コンセプトは常識となり、正しく作られる 早く第三のシステムに到達するために、素早く試作して素早く失敗することが大事という話。 定理4:効
Re:VIEW で執筆する原稿を継続的インテグレーションしたかったので、以下の図のような仕組みを作りました。 ローカル執筆環境の前提条件 Docker 1.3以降がインストールされている Re:VIEW形式の原稿のフォルダがある Re:VIEWやLaTeXはDockerイメージのものを使うので、インストール不要です。 私はMac OS X 10.9とBoot2docker 1.4.1で動かしましたが、WindowsやLinuxでも動くのではないかと思います。 Re:VIEWをDockerで動かす vvakameさんがDocker Hubにイメージを公開してくれていますので、これを使います。 https://registry.hub.docker.com/u/vvakame/review/ dockerコマンドさえ使える状態であれば、以下のようにしてサンプル書籍 をコンパイルしてbook.p
本書は、優れたコードを作りだし、人々と効率的に働く生産性の高いプログラマになるための考え方とテクニックを38のテーマで紹介します。はじめに、コード1行1行の書き方、 ...
*Amazon.co.jp発送商品の注文額 ¥3,500以上は非会員も無料 無料体験はいつでもキャンセルできます。30日のプライム無料体験をぜひお試しください。
長時間座ったまま仕事を続けるプログラマには、腰痛、手首の痛み、目の痛みや頭痛がつきものです。少しの間イスから立ち上がったり、食生活を意識したり、体重などの数値を計測するなど、生活習慣を変えるだけで健康状態は改善します。 本書は、身体を意識することの重要性やウォーキングが健康に及ぼす好影響、栄養を意識した食事、簡単なエクササイズを解説し、さらに眼精疲労や腰痛など、プログラマが直面する様々な健康問題を回避し克服するアイデアとテクニックを紹介します。日本語版では吉岡弘隆氏による「散歩とイングレス」を付録として収録。プログラミングを快適に続けたいと考える技術者必携の一冊です。 目 次 序文 訳者まえがき はじめに 本書を読むべき理由 本書が対象とする読者 本書の内容 自然を欺くことはできない 健康であることの定義 謝辞 1章 変化を起こそう 1.1 健康のユニットテスト 1.2 精神と身体のつなが
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く